亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Quartus II與Modelsim的加減復(fù)用電路實(shí)驗(yàn)教學(xué)設(shè)計(jì)

        2023-09-14 14:20:42陳艷劉俊文古國(guó)龍黃文基楊颯
        現(xiàn)代信息科技 2023年13期
        關(guān)鍵詞:數(shù)字電路實(shí)驗(yàn)設(shè)計(jì)案例教學(xué)

        陳艷 劉俊文 古國(guó)龍 黃文基 楊颯

        摘? 要:加減計(jì)算電路是數(shù)字計(jì)算系統(tǒng)的核心計(jì)算單元,也是相關(guān)專(zhuān)業(yè)本科生需要重點(diǎn)掌握的專(zhuān)業(yè)知識(shí)。文章通過(guò)加減計(jì)算為教學(xué)案例設(shè)計(jì)一種支持原碼輸入、輸出的加減計(jì)算電路系統(tǒng),用于支持帶符號(hào)n bits位寬數(shù)據(jù)的加減運(yùn)算。為了優(yōu)化計(jì)算電路的硬件開(kāi)銷(xiāo),該計(jì)算電路內(nèi)核采用補(bǔ)碼技術(shù),將加法操作與減法操作融合在一個(gè)計(jì)算電路模塊中,實(shí)現(xiàn)系統(tǒng)的加減復(fù)用計(jì)算。實(shí)驗(yàn)教學(xué)采用“理論指導(dǎo)+案例仿真操作”方式,使學(xué)生成為理論指導(dǎo)實(shí)踐的受益人。通過(guò)該教學(xué)案例,學(xué)生不僅能夠掌握數(shù)字電路系統(tǒng)設(shè)計(jì)的一般方法,還能通過(guò)理論結(jié)合實(shí)踐的模式啟迪創(chuàng)新設(shè)計(jì)思維,提升復(fù)雜數(shù)字電路系統(tǒng)設(shè)計(jì)能力,為其進(jìn)一步成長(zhǎng)為學(xué)習(xí)型人才打下良好的專(zhuān)業(yè)基礎(chǔ)和實(shí)踐基礎(chǔ)。

        關(guān)鍵詞:教學(xué)研究和改革;案例教學(xué);實(shí)驗(yàn)設(shè)計(jì);數(shù)字電路;加減計(jì)算電路

        中圖分類(lèi)號(hào):TP331;G642? 文獻(xiàn)標(biāo)識(shí)碼:A? 文章編號(hào):2096-4706(2023)13-0181-08

        Add–subtract Multiplexing Circuit Experimental Teaching Design Based on Quartus II and Modelsim

        CHEN Yan, LIU Junwen, GU Guolong, HUANG Wenji, YANG Sa

        (School of Physics and Information Engineering, Guangdong University of Education, Guangzhou? 510303, China)

        Abstract: The add-subtract computing circuit is the core computing unit of digital computing systems, and it is also a key professional knowledge that relevant undergraduate students need to master. This paper designs an add-subtract calculation circuit system that supports input and output of the original code for teaching cases through addition and subtraction calculation, which is used to support addition and subtraction operations with symbol n bits bit width data. In order to optimize the hardware overhead of the computing circuit, the core of the computing circuit adopts complement technology, which integrates addition and subtraction operations into a computing circuit module to achieve the addition and subtraction multiplexing calculation of the system. The experimental teaching adopts the method of “theoretical guidance+case simulation operation”, making students the beneficiaries of theoretical guidance in practice. Through this teaching case, students can not only master the general method of digital circuit system design, but also inspire innovative design thinking through the mode of combining theory with practice, improve the design ability of complex digital circuit systems, and lay a good professional and practical foundation for their further growth as learning talents.

        Keywords: teaching research and reform; case teaching; experimental design; digital circuit; add–subtract calculation circuit

        0? 引? 言

        為了適應(yīng)新一輪科技變革和產(chǎn)業(yè)革命,教育部等部門(mén)發(fā)布了加快建設(shè)發(fā)展新工科的多個(gè)文件[1,2],將工科專(zhuān)業(yè)的研究與實(shí)踐需求推向更重要的教學(xué)地位。在教學(xué)工作中,如何發(fā)揮學(xué)生主觀能動(dòng)性,提升其工程實(shí)踐與創(chuàng)新能力等越來(lái)越受到教育工作者的廣泛關(guān)注[3-5]。傳統(tǒng)教學(xué)以老師的“講”為主,學(xué)生的工程實(shí)踐能力和創(chuàng)新能力無(wú)法得到有效的培養(yǎng)[6-8],顯然,傳統(tǒng)教學(xué)中的這種模式并不利于新工科人才培養(yǎng)目標(biāo)的實(shí)現(xiàn)。換句話說(shuō),這種模式不利于學(xué)生將理論知識(shí)與工程實(shí)踐相結(jié)合,從而無(wú)法有效地培養(yǎng)學(xué)生的工程實(shí)踐能力。與傳統(tǒng)授課模式不同的是,“理論指導(dǎo)+案例仿真操作”模式實(shí)現(xiàn)了“講解”與“實(shí)踐”的有效結(jié)合,有助于提升學(xué)生的理論指導(dǎo)實(shí)踐能力[9-11]。本文以加減計(jì)算復(fù)用電路系統(tǒng)設(shè)計(jì)為例,通過(guò)“理論指導(dǎo)+案例仿真操作”模式激發(fā)學(xué)生數(shù)字電路方面的實(shí)踐能力和創(chuàng)新能力。

        加減計(jì)算電路是處理器單元的核心部分[12-14],用于支持處理器不同類(lèi)型的計(jì)算任務(wù),加減計(jì)算相關(guān)知識(shí)也是本科階段需要重點(diǎn)掌握的課程內(nèi)容。授課活動(dòng)通常按分離模式進(jìn)行加減電路的設(shè)計(jì)。在該模式下,加法與減法操作通常被設(shè)計(jì)為不同的電路模塊,從而導(dǎo)致數(shù)字電路系統(tǒng)硬件成本增加,降低電路系統(tǒng)在工程應(yīng)用中的實(shí)用性。此外,該模式下,加減計(jì)算電路僅支持二進(jìn)制補(bǔ)碼數(shù)據(jù),學(xué)生需要預(yù)先對(duì)原碼數(shù)據(jù)進(jìn)行補(bǔ)碼轉(zhuǎn)換,這就增加了學(xué)生實(shí)踐過(guò)程中的理解難度??梢?jiàn),這種非直觀、抽象的分離式工程實(shí)踐難以激發(fā)學(xué)生的工程應(yīng)用興趣,無(wú)法有效提升學(xué)生的工程實(shí)踐能力與創(chuàng)新能力。

        本案例以原碼輸入、原碼輸出的形式進(jìn)行數(shù)字電路系統(tǒng)的設(shè)計(jì),并將加法操作和減法操作融合在一個(gè)計(jì)算電路模塊中,實(shí)現(xiàn)了系統(tǒng)的加減復(fù)用計(jì)算,優(yōu)化了計(jì)算電路的硬件開(kāi)銷(xiāo),提升了學(xué)生的工程實(shí)踐能力。本文以帶符號(hào)4 bits位寬數(shù)據(jù)的加減運(yùn)算電路為例進(jìn)行設(shè)計(jì)。為驗(yàn)證加減計(jì)算系統(tǒng)的計(jì)算功能,使用QuartusⅡ[15]與Modelsim[16]軟件進(jìn)行聯(lián)合仿真。采用“理論指導(dǎo)+案例仿真操作”方式,首先給出帶符號(hào)二進(jìn)制原碼運(yùn)算的加減計(jì)算原理;其次基于計(jì)算原理進(jìn)行復(fù)用電路設(shè)計(jì);再次給出Quartus Ⅱ中計(jì)算系統(tǒng)的電路原理圖;最后給出該原理圖在Modelsim中的波形仿真結(jié)果。仿真結(jié)果表明,本案例具有正確的輸入輸出波形,案例設(shè)計(jì)得合理有效。通過(guò)該教學(xué)案例,學(xué)生能夠以理論結(jié)合實(shí)踐的模式不斷啟迪創(chuàng)新思維,提升復(fù)雜數(shù)字電路系統(tǒng)的設(shè)計(jì)能力,為其進(jìn)一步成長(zhǎng)為學(xué)習(xí)型人才打下良好的專(zhuān)業(yè)基礎(chǔ)和實(shí)踐基礎(chǔ)。

        1? 帶符號(hào)運(yùn)算的加減計(jì)算原理

        本節(jié)介紹帶符號(hào)數(shù)的加法、減法計(jì)算特征。首先介紹帶符號(hào)數(shù)的表示方法,其次介紹帶符號(hào)數(shù)原碼、補(bǔ)碼的轉(zhuǎn)換關(guān)系,最后介紹帶符號(hào)數(shù)的加法、減法計(jì)算原理。

        1.1? 帶符號(hào)二進(jìn)制數(shù)的表示方法

        帶符號(hào)數(shù)運(yùn)算是科學(xué)計(jì)算的主要形式。數(shù)字電路系統(tǒng)通過(guò)帶符號(hào)二進(jìn)制數(shù)處理科學(xué)計(jì)算任務(wù)。如圖1(a)所示,帶符號(hào)二進(jìn)制數(shù)由符號(hào)位和數(shù)值位兩部分組成。最高位為符號(hào)位,符號(hào)位的值為0表示該二進(jìn)制數(shù)為正數(shù),如圖1(b)所示;符號(hào)位的值為1表示該二進(jìn)制數(shù)為負(fù)數(shù),如圖1(c)所示。本文4位加減計(jì)算系統(tǒng)用于支持輸入數(shù)據(jù)位寬為4 bits的計(jì)算,最高位表示符號(hào)位,低3位表示數(shù)值位。例如,二進(jìn)制數(shù)據(jù)“0111”表示數(shù)據(jù)7,“1111”表示數(shù)據(jù)?7。本案例的設(shè)計(jì)思路適用于任何位寬數(shù)據(jù)的計(jì)算。

        對(duì)于n bits帶符號(hào)二進(jìn)制數(shù)據(jù),所能表示數(shù)的范圍為[-2n-1,2n-1-1]。本案例中4位帶符號(hào)二進(jìn)制數(shù)據(jù)能夠表示的范圍為[-8,7],其十進(jìn)制數(shù)、原碼、反碼和補(bǔ)碼之間的關(guān)系如表1所示。

        1.2? 帶符號(hào)二進(jìn)制數(shù)原碼與補(bǔ)碼轉(zhuǎn)換關(guān)系

        在數(shù)字電路系統(tǒng)實(shí)驗(yàn)中,為了便于計(jì)算,帶符號(hào)二進(jìn)制的加減計(jì)算通常利用補(bǔ)碼直接計(jì)算。實(shí)驗(yàn)者需要在計(jì)算之前將二進(jìn)制原碼數(shù)據(jù)轉(zhuǎn)換為補(bǔ)碼,并在計(jì)算之后將補(bǔ)碼計(jì)算結(jié)果轉(zhuǎn)換為原碼。原碼、反碼與補(bǔ)碼之間的轉(zhuǎn)換如圖2所示。當(dāng)二進(jìn)制數(shù)為正數(shù)時(shí),其原碼也為該數(shù)的反碼和補(bǔ)碼,如圖2(a)所示。例如,十進(jìn)制數(shù)1的二進(jìn)制原碼、反碼和補(bǔ)碼均為0001。當(dāng)二進(jìn)制數(shù)為負(fù)數(shù)時(shí),其原碼(補(bǔ)碼)除符號(hào)位之外,其他位按位取反(反碼),然后加1得到該數(shù)的補(bǔ)碼(原碼),如圖2(b)所示。例如,十進(jìn)制數(shù)-7的二進(jìn)制原碼為1111,對(duì)該原碼進(jìn)行按位取反(符號(hào)位除外)得到1000(反碼),再加1得到1001,即-7的補(bǔ)碼為1001。同樣,已知-7的補(bǔ)碼為1001,對(duì)該補(bǔ)碼進(jìn)行按位取反(符號(hào)位除外)得到1110,再加1得到1111,即-7的原碼為1111。表1給出了4位帶符號(hào)二進(jìn)制數(shù)的原碼、反碼與補(bǔ)碼間的對(duì)應(yīng)關(guān)系。

        通常,學(xué)生能夠直觀地表示出二進(jìn)制原碼數(shù)據(jù),但是對(duì)于二進(jìn)制補(bǔ)碼數(shù)據(jù)并不敏感,因此,本文將基于輸入輸出為原碼的形式進(jìn)行計(jì)算電路的設(shè)計(jì)。該實(shí)驗(yàn)設(shè)計(jì)旨在提高學(xué)生數(shù)字電路系統(tǒng)加減計(jì)算理論及其工程應(yīng)用能力。

        1.3? 帶符號(hào)二進(jìn)制數(shù)的加減計(jì)算

        對(duì)于二輸入加減計(jì)算(兩個(gè)操作數(shù)A、B,其中A、B取值可能為正數(shù)或負(fù)數(shù)),共有8種計(jì)算情況,分別為正數(shù)+正數(shù)、正數(shù)-負(fù)數(shù)、正數(shù)-正數(shù)、正數(shù)+負(fù)數(shù)、負(fù)數(shù)+正數(shù)、負(fù)數(shù)?負(fù)數(shù)、負(fù)數(shù)+負(fù)數(shù)、負(fù)數(shù)-正數(shù)。很明顯,這8種情況可以等效為3類(lèi)計(jì)算,分別是正數(shù)+正數(shù)(該計(jì)算體現(xiàn)正數(shù)+正數(shù)和正數(shù)?負(fù)數(shù)的計(jì)算)、正數(shù)+負(fù)數(shù)(該計(jì)算體現(xiàn)正數(shù)-正數(shù)、正數(shù)+負(fù)數(shù)、負(fù)數(shù)+正數(shù)和負(fù)數(shù)-負(fù)數(shù)的計(jì)算)以及負(fù)數(shù)+負(fù)數(shù)(該計(jì)算體現(xiàn)負(fù)數(shù)+負(fù)數(shù)和負(fù)數(shù)-正數(shù)的計(jì)算)。從上述分類(lèi)可以看出,A與B相加與相減操作等效的三類(lèi)計(jì)算均為加法操作,因此,在設(shè)計(jì)加減計(jì)算電路時(shí)可以基于該思想節(jié)約硬件開(kāi)銷(xiāo)。

        本案例設(shè)計(jì)以操作數(shù)位寬4 bits為例進(jìn)行說(shuō)明,根據(jù)二進(jìn)制數(shù)的計(jì)算理論,當(dāng)輸入數(shù)據(jù)的位寬為4 bits時(shí),為了防止數(shù)據(jù)溢出,兩個(gè)4 bits操作數(shù)的運(yùn)算結(jié)果需要5 bits位寬才能正確表示。下面將基于4 bits操作數(shù)介紹正數(shù)+正數(shù)、正數(shù)+負(fù)數(shù)和負(fù)數(shù)+負(fù)數(shù)這三類(lèi)計(jì)算,其他計(jì)算均可等效為這三類(lèi)計(jì)算。

        如圖3所示為正數(shù)+正數(shù)的操作圖,其中操作數(shù)A和B均為正數(shù),分別為3和6。圖3(a)給出了操作數(shù)A、B的原碼、補(bǔ)碼以及位擴(kuò)展后的補(bǔ)碼。位擴(kuò)展是指對(duì)最高位(符號(hào))進(jìn)行擴(kuò)展,如0011的最高位為0,位擴(kuò)展后為00011,可見(jiàn)對(duì)于正數(shù)而言,位的擴(kuò)展不會(huì)改變數(shù)值的大小。圖3(b)為操作數(shù)A、B的補(bǔ)碼相加過(guò)程,該加法中的操作數(shù)均為位擴(kuò)展后的補(bǔ)碼形式,其結(jié)果(01001)也是補(bǔ)碼形式。01001的最高位為0,表示十進(jìn)制數(shù)據(jù)9,該二進(jìn)制結(jié)果符合3 + 6 = 9的計(jì)算結(jié)果。

        如圖4所示為正數(shù)+負(fù)數(shù)的操作圖,其中操作數(shù)A = 3、B = ?6。圖4(a)給出了操作數(shù)A、B的原碼、補(bǔ)碼以及位擴(kuò)展后的補(bǔ)碼。負(fù)數(shù)的位擴(kuò)展是指對(duì)最高位(符號(hào))進(jìn)行擴(kuò)展,如B的補(bǔ)碼1010位擴(kuò)展之后為11010,可見(jiàn)對(duì)于負(fù)數(shù)而言,位的擴(kuò)展同樣不會(huì)改變數(shù)值的大小。圖4(b)為操作數(shù)A、B位擴(kuò)展后補(bǔ)碼的相加過(guò)程,相加的結(jié)果(11101)也是補(bǔ)碼形式。按照?qǐng)D2(b)中補(bǔ)碼與原碼之間的轉(zhuǎn)換關(guān)系可得補(bǔ)碼11101,表示十進(jìn)制數(shù)?3,該結(jié)果符合3 + (-6) = -3的計(jì)算結(jié)果。從圖4中可以看出,A與B相減等效于A的補(bǔ)碼與(?B)的補(bǔ)碼相加。因此,在進(jìn)行減法操作時(shí)可將該數(shù)取負(fù)后再進(jìn)行補(bǔ)碼相加的操作,將減法操作轉(zhuǎn)換為加法操作,省去減法專(zhuān)用電路結(jié)構(gòu),節(jié)約計(jì)算電路的硬件開(kāi)銷(xiāo)。

        如圖5所示為負(fù)數(shù)+負(fù)數(shù)的操作圖,其中操作數(shù)A = -3、B = -6。圖5(a)給出了操作數(shù)A、B的原碼、補(bǔ)碼以及位擴(kuò)展后的補(bǔ)碼。A的位擴(kuò)展補(bǔ)碼為11101,B的位擴(kuò)展補(bǔ)碼為11010。圖5(b)為操作數(shù)A、B位擴(kuò)展補(bǔ)碼的相加過(guò)程,相加的結(jié)果(10111)也是補(bǔ)碼形式。按照?qǐng)D2(b)中補(bǔ)碼與原碼之間的轉(zhuǎn)換關(guān)系可得補(bǔ)碼10111,表示十進(jìn)制數(shù)-9,該結(jié)果符合(-3) + (-6) = -9的計(jì)算結(jié)果。

        圖3、圖4、圖5計(jì)算涵蓋了兩個(gè)操作數(shù)的8類(lèi)加減計(jì)算,其他計(jì)算均可等效為這三類(lèi)計(jì)算。從圖3、圖4、圖5所展示的補(bǔ)碼計(jì)算操作過(guò)程可知,所有類(lèi)型操作均為補(bǔ)碼的加法操作,也就是說(shuō)所有的加法操作和減法操作都可以通過(guò)加法電路實(shí)現(xiàn),而無(wú)需設(shè)計(jì)復(fù)雜的減法專(zhuān)用電路。此外,從圖3至圖5可以看出,無(wú)論操作數(shù)是正數(shù)還是負(fù)數(shù),均可由補(bǔ)碼輸入計(jì)算得到正確的補(bǔ)碼輸出。因此,本案例將正負(fù)數(shù)的計(jì)算統(tǒng)一為基于補(bǔ)碼的加法計(jì)算形式,并在補(bǔ)碼計(jì)算內(nèi)核的基礎(chǔ)上設(shè)計(jì)原碼與補(bǔ)碼轉(zhuǎn)換的電路模塊,實(shí)現(xiàn)計(jì)算電路的原碼輸入、原碼輸出,提高案例的可實(shí)踐性。

        2? 加減復(fù)用計(jì)算電路原理圖設(shè)計(jì)

        本小節(jié)基于上述兩個(gè)操作數(shù)的運(yùn)算進(jìn)行數(shù)字電路系統(tǒng)的設(shè)計(jì),用于支持原碼輸入、原碼輸出的計(jì)算特征。首先介紹基于原碼計(jì)算的系統(tǒng)框圖,然后介紹系統(tǒng)框圖中的原碼、補(bǔ)碼轉(zhuǎn)換系統(tǒng)和加減計(jì)算復(fù)用系統(tǒng),分別如圖6、圖7所示。

        2.1? 加減計(jì)算復(fù)用系統(tǒng)框圖

        如圖6所示為加減計(jì)算系統(tǒng)框圖,用于支持基于原碼輸入、原碼輸出的加減計(jì)算任務(wù)。通過(guò)上述分析可知,無(wú)論數(shù)據(jù)類(lèi)型為正數(shù)還是負(fù)數(shù),補(bǔ)碼運(yùn)算的內(nèi)核可使計(jì)算形式統(tǒng)一為加法操作。為便于學(xué)生理解二進(jìn)制數(shù)據(jù)加減操作過(guò)程,本文設(shè)計(jì)了支持原碼輸入、原碼輸出的計(jì)算電路系統(tǒng),直觀地展示二進(jìn)制加減操作。如圖6所示,該系統(tǒng)的輸入輸出均為二進(jìn)制原碼,計(jì)算系統(tǒng)包含原碼、補(bǔ)碼轉(zhuǎn)換電路(為計(jì)算內(nèi)核提供補(bǔ)碼輸入數(shù)據(jù)和原碼輸出數(shù)據(jù))和補(bǔ)碼計(jì)算內(nèi)核電路(加減計(jì)算操作)。系統(tǒng)輸入為A、B(均為n bits原碼),系統(tǒng)輸出為O(n+1 bits原碼),圖中的[]符號(hào)表示位拼接,例如O = [S [n] O1]表示S [n]與O1(n bits)的拼接形成n+1 bits位寬數(shù)據(jù)賦值給O。

        2.2? 原碼、補(bǔ)碼轉(zhuǎn)換電路

        圖7(a)為原碼、補(bǔ)碼互換電路系統(tǒng)。圖7(a)上圖為系統(tǒng)框圖,系統(tǒng)輸入數(shù)據(jù)A的位寬為n bits,輸出數(shù)據(jù)S的位寬為n-1 bits。輸出數(shù)據(jù)位寬比輸入數(shù)據(jù)位寬少1的原因是原碼和補(bǔ)碼的符號(hào)位一樣,因此,本案例原碼、補(bǔ)碼轉(zhuǎn)換系統(tǒng)的輸出僅為除符號(hào)位的數(shù)據(jù)。

        圖7(a)下圖為圖7(a)系統(tǒng)圖的電路細(xì)節(jié)圖,實(shí)現(xiàn)原碼與補(bǔ)碼間的互換。該電路圖的輸入、輸出分別為A、S。電路內(nèi)核單元是由異或門(mén)和半加器組成的鏈?zhǔn)诫娐?。其中,半加器的兩個(gè)輸入端均為1 bit輸入數(shù)據(jù)(用符號(hào)A、B表示);半加器的兩個(gè)輸出端均為1 bit輸入數(shù)據(jù)(用符號(hào)S、C表示),S、C分別為A + B的和值、進(jìn)位值。例如A = 1、B = 1時(shí),按照二進(jìn)制加法可得S = 0,C = 1。

        對(duì)于n bits輸入數(shù)據(jù),由于不需要處理符號(hào)位的數(shù)據(jù),系統(tǒng)僅需n-1個(gè)異或門(mén)與半加器的組合即可實(shí)現(xiàn)原碼與補(bǔ)碼間的轉(zhuǎn)換。其中,異或門(mén)的輸出端為XOR (A[i],A[n-1]),XOR表示異或操作。當(dāng)電路系統(tǒng)的輸入為正數(shù)時(shí),符號(hào)位A[n-1] = 0,則XOR (A[i],A[n-1]) = A[i];當(dāng)電路系統(tǒng)的輸入為負(fù)數(shù)時(shí),符號(hào)位A[n-1] = 1,則XOR (A[i],A[n-1]) = NOT(A[i]),NOT表示取非操作。從上述分析可知,電路系統(tǒng)中的n-1個(gè)異或門(mén)可實(shí)現(xiàn)除符號(hào)位之外原碼的反碼操作。當(dāng)原碼為正數(shù)時(shí),XOR操作后保持原碼數(shù)據(jù)(正數(shù)的原碼等于其反碼);當(dāng)原碼為負(fù)數(shù)時(shí),XOR操作后得到反碼,從而實(shí)現(xiàn)原碼與補(bǔ)碼間轉(zhuǎn)換的第一步。

        基于XOR門(mén)反碼輸出結(jié)果,n-1個(gè)半加器的鏈?zhǔn)浇Y(jié)構(gòu)用于支持從反碼到補(bǔ)碼的操作,從而實(shí)現(xiàn)原碼與補(bǔ)碼間的轉(zhuǎn)換。當(dāng)電路系統(tǒng)的輸入為正數(shù)(A[n-1] = 0)時(shí),根據(jù)電路系統(tǒng)中鏈?zhǔn)桨爰悠鹘Y(jié)構(gòu)可知,S [0] = A [0]、S [1] = A [1]、…、S [n-2] = A [n-2],該轉(zhuǎn)換系統(tǒng)的輸出與輸入(除去符號(hào)位)一致,滿(mǎn)足正數(shù)原碼等于補(bǔ)碼的計(jì)算特征;當(dāng)電路系統(tǒng)的輸入為負(fù)數(shù)(A [n-1] = 1)時(shí),根據(jù)電路系統(tǒng)中鏈?zhǔn)桨爰悠鹘Y(jié)構(gòu)可知,該電路計(jì)算操作數(shù)A除符號(hào)位外取反再加1的操作,滿(mǎn)足負(fù)數(shù)原碼與補(bǔ)碼間轉(zhuǎn)換的計(jì)算特征。綜上所述,該轉(zhuǎn)換電路系統(tǒng)能夠支持原碼與補(bǔ)碼間的互換計(jì)算。

        圖7(b)給出輸入數(shù)據(jù)位寬為4 bits(輸入數(shù)據(jù)為A)的電路系統(tǒng)結(jié)構(gòu)案例。由于符號(hào)位不需要進(jìn)行轉(zhuǎn)換,電路系統(tǒng)僅需3組異或門(mén)與半加器的鏈?zhǔn)浇M合。A[0]~A[2]依次作為3組異或門(mén)的輸入數(shù)據(jù);A[3]為A的符號(hào)位數(shù)值,該值為3組異或門(mén)的控制輸入數(shù)據(jù),實(shí)現(xiàn)二進(jìn)制原碼與反碼間的轉(zhuǎn)換操作(正數(shù)反碼=原碼;負(fù)數(shù)反碼=NOT(原碼))。半加器鏈?zhǔn)浇Y(jié)構(gòu)進(jìn)行加法操作,實(shí)現(xiàn)反碼(異或門(mén)輸出結(jié)果)轉(zhuǎn)換為補(bǔ)碼的操作。例如,當(dāng)A為負(fù)數(shù)時(shí),A[3] = 1,最低位的半加器進(jìn)行反碼加1操作,并通過(guò)該半加器鏈?zhǔn)浇Y(jié)構(gòu)進(jìn)行逐位相加,即可得到負(fù)數(shù)除去符號(hào)位的補(bǔ)碼數(shù)據(jù);當(dāng)A為正數(shù)時(shí),A[3] = 0,半加器鏈?zhǔn)诫娐份敵鰹榉创a(正數(shù)的原碼=反碼=補(bǔ)碼),即可得到正數(shù)除去符號(hào)位的補(bǔ)碼數(shù)據(jù)。

        2.3? 加減計(jì)算復(fù)用數(shù)字電路系統(tǒng)

        如圖8所示為加減計(jì)算復(fù)用數(shù)字電路系統(tǒng),用于支持補(bǔ)碼輸入、補(bǔ)碼輸出的加減計(jì)算任務(wù)。圖8(a)為系統(tǒng)框圖,包含3個(gè)輸入端(A、B和ASC)和1個(gè)輸出端(S)。其中,A、B為數(shù)據(jù)輸入端口,位寬均為n bits;ASC為加減控制輸入端口,位寬為1 bit。當(dāng)ASC = 0時(shí),系統(tǒng)執(zhí)行加法操作;當(dāng)ASC = 1時(shí),系統(tǒng)執(zhí)行減法操作。S為數(shù)據(jù)輸出端口,位寬為n+1 bits。

        圖8(b)為圖8(a)系統(tǒng)框圖的電路細(xì)節(jié)圖。該電路圖的三個(gè)輸入端分別為A、B和ASC,1個(gè)輸出端為S。電路系統(tǒng)的內(nèi)核單元為異或門(mén)和全加器組成的鏈?zhǔn)诫娐?。其中,全加器?個(gè)輸入端均為1 bit輸入數(shù)據(jù)(用符號(hào)A、B和Cin表示);兩個(gè)輸出端均為1 bit輸入數(shù)據(jù)(用符號(hào)S、C表示),S、C分別為A + B + Cin的和值、進(jìn)位值。例如A = 1、B = 0、Cin = 1時(shí),按照二進(jìn)制加法可得S = 0,C = 1。

        通過(guò)圖3、圖4、圖5分析可知,位擴(kuò)展的加減計(jì)算是避免數(shù)據(jù)溢出并得到正確計(jì)算結(jié)果的有效方法。本設(shè)計(jì)采用位擴(kuò)展策略,對(duì)于n bits輸入數(shù)據(jù),構(gòu)建n+1組由異或門(mén)與全加器構(gòu)成的鏈?zhǔn)浇Y(jié)構(gòu),如圖8(b)所示。從左往右,A、B從最低位值到最高位值(符號(hào)位的值)依次付給前n組異或門(mén)和全加器。最后為了計(jì)算正確,將A、B符號(hào)位的值再次送入最右側(cè)的異或門(mén)和全加器,實(shí)現(xiàn)位擴(kuò)展計(jì)算。

        在該設(shè)計(jì)中,異或門(mén)的輸入分別為B[i]和ASC。根據(jù)異或門(mén)的計(jì)算特征(XOR(B[i],ASC))可知,當(dāng)ASC = 0時(shí)異或門(mén)輸出B[i],電路系統(tǒng)實(shí)現(xiàn)A +? = 的操作。例如,對(duì)于圖8(b)最左側(cè)的異或門(mén)和全加器組合,由于異或門(mén)輸出為B[0],全加器三個(gè)輸入端的數(shù)據(jù)分別為A[0]、B[0]以及ASC(此時(shí)ASC = 0),則全加器的計(jì)算模式為A[0] + B[0] + ASC = A[0] + B[0]。根據(jù)鏈?zhǔn)浇Y(jié)構(gòu)的數(shù)據(jù)傳遞特征可知,圖8(b)電路在ASC = 0時(shí)實(shí)現(xiàn)A + B的操作,從而實(shí)現(xiàn)加法操作。

        當(dāng)ASC = 1時(shí),圖8(b)實(shí)現(xiàn)A - B的操作,從而實(shí)現(xiàn)減法操作。根據(jù)圖8(b)可知,ASC = 1條件下,異或門(mén)輸出NOT(B[i]),即最高的兩位異或門(mén)是將B的符號(hào)位取反,其他異或門(mén)對(duì)B的數(shù)值位取反。由于最低位全加器的進(jìn)位輸入端為加減控制信號(hào),即Cin = ASC = 1,全加器實(shí)現(xiàn)B的反碼加1操作,求得B負(fù)數(shù)的補(bǔ)碼,即(-B)的補(bǔ)碼。根據(jù)圖4的分析可知,減去一個(gè)數(shù)等效于與這個(gè)數(shù)負(fù)數(shù)的補(bǔ)碼相加,因此,圖8(b)電路實(shí)現(xiàn)A - B的操作。

        為了更加直觀地展現(xiàn)圖8電路支持減法(ASC = 1)操作,我們以圖4的3-6計(jì)算為例進(jìn)行分析。設(shè)A = 3、B = 6,此時(shí)A、B均為正數(shù),通過(guò)圖7轉(zhuǎn)換可得A = 0011、B = 0110。圖8輸入數(shù)據(jù)位寬為4 bits,需要5組由異或門(mén)與全加器構(gòu)成的鏈?zhǔn)浇Y(jié)構(gòu)。圖8的輸入數(shù)據(jù)為A[0] = 1、A[1] = 1、A[2] = 0、A[3] = 0、B[0]=0、B[1] = 1、B[2] = 1、B[3] = 0、ASC = 1,則5個(gè)異或門(mén)對(duì)B取反可得11001,此時(shí)全加器A、B、Cin端口的輸入分別為00011、11001、1,全加器執(zhí)行三者的相加操作,即00011+11001+1 = 00011+(11001+1) = 00011+11010 = 11101(11101為-3的補(bǔ)碼),其中00011為3的補(bǔ)碼,11010為-6的補(bǔ)碼,從而實(shí)現(xiàn)3-6 = -3的操作。

        綜上所述,圖8電路設(shè)計(jì)能夠同時(shí)支持補(bǔ)碼輸入、補(bǔ)碼輸出的加減計(jì)算任務(wù),實(shí)現(xiàn)加減復(fù)用計(jì)算的功能。本案例給出了詳細(xì)的理論知識(shí)和電路設(shè)計(jì)思路,學(xué)生可以基于教學(xué)案例的設(shè)計(jì)思想進(jìn)行自主設(shè)計(jì),進(jìn)一步提升數(shù)字電路系統(tǒng)的創(chuàng)新能力。

        3? 實(shí)驗(yàn)仿真

        本節(jié)將以?xún)蓚€(gè)4 bits位寬數(shù)據(jù)執(zhí)行加減操作為例進(jìn)行仿真設(shè)計(jì),驗(yàn)證圖6原碼輸入、原碼輸出的加減系統(tǒng)的計(jì)算功能。

        3.1? 仿真設(shè)置

        本實(shí)驗(yàn)所用軟件平臺(tái)為Quartus Ⅱ 12.0和Modelsim SE-64 10.0d,其中Quartus Ⅱ用于設(shè)計(jì)、驗(yàn)證和綜合加減計(jì)算電路,Modelsim用于提供仿真波形。Quartus Ⅱ和Modelsim聯(lián)合仿真配置方式參見(jiàn)文獻(xiàn)[17]。

        3.2? 兩輸入加減計(jì)算系統(tǒng)電路

        如圖9所示為兩輸入加減計(jì)算電路圖,該圖包含3個(gè)部分,分別為原碼轉(zhuǎn)補(bǔ)碼電路、補(bǔ)碼加減計(jì)算電路和補(bǔ)碼轉(zhuǎn)原碼電路。圖9中的數(shù)據(jù)流動(dòng)方向與圖6一致。圖9(a)為原碼轉(zhuǎn)補(bǔ)碼電路,該電路對(duì)應(yīng)于圖6左側(cè)的原碼補(bǔ)碼轉(zhuǎn)換系統(tǒng),實(shí)現(xiàn)將輸入的原碼數(shù)據(jù)轉(zhuǎn)換為補(bǔ)碼,為下一級(jí)模塊提供補(bǔ)碼輸入數(shù)據(jù)。該計(jì)算系統(tǒng)的輸入數(shù)據(jù)為A(4 bits)、B(4 bits)、ASC(1 bit),圖9(a)將A、B進(jìn)行原碼轉(zhuǎn)補(bǔ)碼的操作,操作數(shù)A、B的補(bǔ)碼分別用符號(hào)C、D表示。圖9(b)為補(bǔ)碼加減計(jì)算電路,該電路對(duì)應(yīng)圖6的加減計(jì)算復(fù)用系統(tǒng),實(shí)現(xiàn)基于補(bǔ)碼的加減運(yùn)算,為下一級(jí)提供補(bǔ)碼形式的加減計(jì)算值。該模塊電路的輸入為加減計(jì)算控制位(ASC)和符號(hào)位擴(kuò)展的C、D,輸出為S和O的符號(hào)位。9(c)為補(bǔ)碼轉(zhuǎn)原碼電路,該電路對(duì)應(yīng)圖6右側(cè)的原碼補(bǔ)碼轉(zhuǎn)換系統(tǒng),該模塊的輸入數(shù)據(jù)為S,輸出數(shù)據(jù)為O的值位,實(shí)現(xiàn)補(bǔ)碼轉(zhuǎn)換為原碼,完成從原碼輸入到原碼輸出的加減計(jì)算。

        3.3? 仿真波形分析

        該加減操作計(jì)算電路支持所有操作數(shù)為正數(shù)或負(fù)數(shù)的情況,為了驗(yàn)證該計(jì)算電路的運(yùn)算正確性,仿真結(jié)果將展示操作數(shù)A、B取正數(shù)或負(fù)數(shù)的運(yùn)算波形,如圖10、圖11所示,仿真時(shí)間周期為500 ns。

        圖10枚舉了操作數(shù)A為正數(shù)、操作數(shù)B正負(fù)切換的加減計(jì)算情形。圖中A、B、ASC為計(jì)算電路的輸入數(shù)據(jù),A和B均為4 bits位寬數(shù)據(jù)(原碼,最高位為符號(hào)位),ASC為加減控制位(1 bit),O為輸出數(shù)據(jù)(原碼,最高位為符號(hào)位)。對(duì)于操作數(shù)A為正數(shù)的情形可實(shí)現(xiàn)A+B(正數(shù))、A+B(負(fù)數(shù))、A-B(正數(shù))以及A-B(負(fù)數(shù))四種情形。例如,在1~1.5 μs,A = 0000(十進(jìn)制數(shù)0),B = 0111(十進(jìn)制數(shù)7),ASC = 1(減法操作),仿真結(jié)果O(10111符號(hào)位擴(kuò)展結(jié)果)與A-B = -7的原碼結(jié)果一致。通過(guò)簡(jiǎn)單計(jì)算可知,其他時(shí)刻的仿真結(jié)果與理論運(yùn)算也一致,這表明該電路能夠支持上述四類(lèi)計(jì)算的原碼運(yùn)算模式。

        圖11枚舉了操作數(shù)A為負(fù)數(shù)、操作數(shù)B正負(fù)切換的加減計(jì)算情形。圖中A、B、ASC與圖10一致。對(duì)于操作數(shù)A為負(fù)數(shù)的情形可實(shí)現(xiàn)A+B(正數(shù))、A+B(負(fù)數(shù))、A - B(正數(shù))以及A - B(負(fù)數(shù))四種情形。例如,在16.5~17 ns,A = 1000(十進(jìn)制數(shù)-8),B = 0111(十進(jìn)制數(shù)7),ASC = 0(加法操作),仿真結(jié)果O(10001,符號(hào)位擴(kuò)展結(jié)果)與A+B = -1的原碼結(jié)果一致。通過(guò)簡(jiǎn)單計(jì)算可知,其他時(shí)刻的仿真結(jié)果與理論運(yùn)算也一致。

        圖10、圖11的仿真結(jié)果表明,該電路系統(tǒng)能夠支持各類(lèi)型原碼輸入、原碼輸出的加減計(jì)算模式,驗(yàn)證了圖9數(shù)字電路系統(tǒng)的計(jì)算功能,表明該電路系統(tǒng)的設(shè)計(jì)合理性和計(jì)算正確性。圖9、圖10、圖11的詳細(xì)電路設(shè)計(jì)圖和波形分析結(jié)果可以輔助學(xué)生基于本案例的驗(yàn)證過(guò)程進(jìn)行工程設(shè)計(jì),進(jìn)一步提升數(shù)字電路系統(tǒng)在QuartusⅡ和Modelsim中的實(shí)踐能力。

        4? 結(jié)? 論

        本文以原碼輸入、原碼輸出加減計(jì)算復(fù)用電路設(shè)計(jì)為例進(jìn)行教學(xué)案例設(shè)計(jì),旨在利用數(shù)字電路知識(shí)構(gòu)建特定需求的數(shù)字電路系統(tǒng)。首先,介紹帶符號(hào)運(yùn)算的加減計(jì)算原理;其次,基于計(jì)算原理構(gòu)建加減可復(fù)用計(jì)算的電路原理圖,實(shí)現(xiàn)原碼數(shù)據(jù)輸入、原碼數(shù)據(jù)輸出的計(jì)算;最后,對(duì)原理圖進(jìn)行實(shí)驗(yàn)驗(yàn)證,仿真結(jié)果直觀地展示了8類(lèi)運(yùn)算結(jié)果,驗(yàn)證了加減復(fù)用計(jì)算電路系統(tǒng)的計(jì)算功能。一方面,本教學(xué)案例提供一種直觀的原碼輸入、原碼輸出運(yùn)算電路,便于學(xué)生有效處理帶符號(hào)二進(jìn)制運(yùn)算;另一方面,本案例給出詳細(xì)的理論知識(shí)和電路設(shè)計(jì)圖,學(xué)生可以基于教學(xué)案例的設(shè)計(jì)思想進(jìn)行自主設(shè)計(jì),有效提升其數(shù)字電路系統(tǒng)的實(shí)踐能力和創(chuàng)新能力,為其進(jìn)一步成長(zhǎng)為學(xué)習(xí)型人才打下良好的專(zhuān)業(yè)基礎(chǔ)和實(shí)踐基礎(chǔ)。

        參考文獻(xiàn):

        [1] 教育部,人力資源社會(huì)保障部,工業(yè)和信息化部.制造業(yè)人才發(fā)展規(guī)劃指南[EB/OL].[2023-01-04].https://www.gov.cn/xinwen/2017-02/14/content_5167903.htm.

        [2] 復(fù)旦大學(xué)教務(wù)處.“新工科”建設(shè)復(fù)旦共識(shí) [EB/OL].[2023-01-08].https://jwc.fudan.edu.cn/2b/1b/c25319a273179/page.htm.

        [3] 楊颯,邢鳳闖.基于高頻諧振功率放大電路分析的仿真教學(xué)研究 [J].廣東第二師范學(xué)院學(xué)報(bào),2020,40(5):98-105.

        [4] 宋耘.哈佛商學(xué)院“案例教學(xué)”的教學(xué)設(shè)計(jì)與組織實(shí)施 [J].高教探索,2018,183(7):43-47.

        [5] 胡志超,王云超,馮薇,等.“以學(xué)生為中心”的工科混合式教學(xué)課程設(shè)計(jì)探索與實(shí)踐 [J].高教學(xué)刊,2023,9(2):158-161+165.

        [6] 孫覬琳,成守宇,薛若軍,等.開(kāi)放式實(shí)驗(yàn)在“核工程虛擬仿真實(shí)驗(yàn)”課程教學(xué)中的應(yīng)用初探 [J].現(xiàn)代信息科技,2022,6(18):192-194+198.

        [7] 朱寶忠,孫運(yùn)蘭,陳海飛,等.基于新工科背景的“學(xué)科競(jìng)賽”&“科研訓(xùn)練”雙驅(qū)模式下學(xué)生工程實(shí)踐能力和創(chuàng)新創(chuàng)業(yè)能力的培養(yǎng) [J].創(chuàng)新創(chuàng)業(yè)理論研究與實(shí)踐,2022,5(23):76-78.

        [8] 艾偉,郭亮,李梅,等.基于創(chuàng)新能力培養(yǎng)的電子類(lèi)工程實(shí)踐教學(xué)模式探索 [J].創(chuàng)新創(chuàng)業(yè)理論研究與實(shí)踐,2022,5(22):118-120.

        [9] 馮李航,吳力帆,宋輝,等.虛擬工廠規(guī)劃仿真系統(tǒng)設(shè)計(jì)及其教學(xué)案例分析 [J].實(shí)驗(yàn)技術(shù)與管理,2023,40(1):160-168.

        [10] 閻昌國(guó),李偉,李青,等. Boost變換器電路的“再生”教學(xué)與實(shí)驗(yàn)仿真 [J].實(shí)驗(yàn)技術(shù)與管理,2021,38(7):161-165.

        [11] 張蓓,張粹玲,王新澤,等.“傳感器及調(diào)理電路的設(shè)計(jì)與仿真”課程的項(xiàng)目實(shí)踐理念探索 [J].實(shí)驗(yàn)技術(shù)與管理,2021,38(3):225-229+282.

        [12] 李泉龍.基于Kogge-Stone算法與多米諾邏輯的64位高性能加法電路設(shè)計(jì) [D].成都:西南交通大學(xué),2016.

        [13] 周游,李杰,賀光輝.面向高精度隨機(jī)計(jì)算單元的加法運(yùn)算電路與MAX運(yùn)算電路設(shè)計(jì) [J].微電子學(xué)與計(jì)算機(jī),2021,38(7):1-6.

        [14] 李鵬.減法電路在運(yùn)放恒流源電路中的應(yīng)用 [J].電子世界,2019,580(22):163-164.

        [15] LIU B. Research and Design of a simple CPU with QuartusⅡ [J] .IOP Conference Series:Earth and Environmental Science,2019,252(3):032180.

        [16] ALBATOOSH A H,SHUJA'A M I,AL-NEDAWE B M. A VHDL Code for Offset Pulse Position Modulation Working with Reed Solomon System by Using ModelSim [EB/OL].[2023-01-19].https://www.journal.mtu.edu.iq/index.php/MTU/article/view/758.

        [17] 陳艷,楊颯.算術(shù)邏輯單元在Quartus Ⅱ與ModelSim中的教學(xué)實(shí)例設(shè)計(jì) [J].現(xiàn)代信息科技,2021,5(18):111-115.

        作者簡(jiǎn)介:陳艷(1991.02—),女,漢族,湖南常德人,講師,博士,研究方向:FPGA高性能計(jì)算;通訊作者:楊颯(1970.10—),女,漢族,湖南湘潭人,副教授,碩士,研究方向:信息處理與電路設(shè)計(jì)。

        收稿日期:2023-02-24

        基金項(xiàng)目:廣東省普通高校重點(diǎn)領(lǐng)域?qū)m?xiàng)(2020ZDZX2059);廣東省高等學(xué)校教學(xué)質(zhì)量與教學(xué)改革工程項(xiàng)目(202005048);廣州市科技計(jì)劃一般項(xiàng)目(202201011386);廣東第二師范學(xué)院創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(202214278076)

        猜你喜歡
        數(shù)字電路實(shí)驗(yàn)設(shè)計(jì)案例教學(xué)
        不同的溫度
        有趣的放大鏡
        哪個(gè)涼得快?
        基于數(shù)字電路的定時(shí)器的設(shè)計(jì)
        電子制作(2019年22期)2020-01-14 03:16:46
        無(wú)字天書(shū)
        MATLAB在數(shù)字電路教學(xué)中的應(yīng)用
        基于數(shù)字電路的密碼鎖設(shè)計(jì)與實(shí)現(xiàn)
        數(shù)字電路實(shí)驗(yàn)的設(shè)計(jì)分析
        電子制作(2017年1期)2017-05-17 03:54:28
        案例教學(xué)在機(jī)械創(chuàng)新設(shè)計(jì)課程中的應(yīng)用
        考試周刊(2016年77期)2016-10-09 12:16:11
        馬克思主義基本原理概論課案例教學(xué)的幾點(diǎn)思考
        亚洲国产精品色一区二区| 国产传媒精品成人自拍| 久久亚洲中文字幕乱码| 亚洲国产精品激情综合色婷婷| 亚洲一区二区三区日本久久九 | 极品av麻豆国产在线观看| 日本免费a级毛一片| 少妇高潮惨叫久久久久久| 亚洲色拍拍噜噜噜最新网站| 青青青草视频手机在线| 日本久久精品中文字幕| 亚洲精品无码高潮喷水a片软| 国产福利视频在线观看| 日韩好片一区二区在线看| 亚洲av乱码中文一区二区三区| av无码电影一区二区三区| 亚洲乱熟妇一区二区三区蜜桃| 精品成人av人一区二区三区 | 韩国免费一级a一片在线| 各类熟女熟妇激情自拍| 黄射视频在线观看免费| 天堂а在线中文在线新版| 国产色a在线观看| 九九精品国产99精品| 色中文字幕视频在线观看| 亚洲国产区中文在线观看| 亚洲亚色中文字幕剧情| 人妻少妇精品久久久久久| 中文成人无字幕乱码精品区 | 国产乱人伦AⅤ在线麻豆A| 熟女少妇av一区二区三区| 久久久麻豆精亚洲av麻花| 热re99久久精品国99热| 国产午夜亚洲精品午夜鲁丝片| 国产一区二区三区免费在线视频| 成人在线观看视频免费播放| 欧美又大又硬又粗bbbbb| 50岁熟妇大白屁股真爽| 国产一区二区三区爆白浆| 中文亚洲成a人片在线观看| 今井夏帆在线中文字幕|