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

        ?

        N位BCD—二進(jìn)制轉(zhuǎn)換電路VHDL設(shè)計(jì)

        2018-10-26 11:32:38廖超平
        科技資訊 2018年13期
        關(guān)鍵詞:移位

        廖超平

        摘 要:本文以四位十進(jìn)制數(shù)為例,分析了N位BCD-二進(jìn)制轉(zhuǎn)換算法,并以此算法為根據(jù),應(yīng)用VHDL語(yǔ)言設(shè)計(jì)了一種實(shí)現(xiàn)N位BCD-二進(jìn)制轉(zhuǎn)換的電路。本設(shè)計(jì)的基本循環(huán)是將BCD碼表示中各個(gè)數(shù)碼往右邊移動(dòng)一位,每個(gè)十進(jìn)制位的8421表示中權(quán)為1的位的數(shù)碼都移到低1位十進(jìn)制位的8421表示中重新組合成新的8421表示,而最低一位十進(jìn)制位的8421表示中權(quán)為1的位的數(shù)碼則移出8421表示成為二進(jìn)制表示。

        關(guān)鍵詞:BCD-二進(jìn)制轉(zhuǎn)換 VHDL 移位

        中圖分類號(hào):TP303 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2018)05(a)-0003-03

        相當(dāng)大一類的數(shù)字系統(tǒng)的人機(jī)交互存在數(shù)據(jù)輸入,使用者習(xí)慣數(shù)據(jù)表達(dá)為十進(jìn)制(BCD)碼形式,而數(shù)字系統(tǒng)內(nèi)部則以二進(jìn)制為方便。所以,在使用VHDL設(shè)計(jì)數(shù)字系統(tǒng)時(shí)多位BCD-二進(jìn)制轉(zhuǎn)換電路是必需的。多位BCD-二進(jìn)制轉(zhuǎn)換電路在各種有人工數(shù)據(jù)輸入的系統(tǒng),比如:智能儀表、電子秤和數(shù)控機(jī)床等數(shù)字系統(tǒng)的設(shè)計(jì)中廣泛使用。

        1 N位BCD-二進(jìn)制轉(zhuǎn)換算法分析

        下面以四位十進(jìn)制數(shù)字的BCD-二進(jìn)制轉(zhuǎn)換為例分析多位BCD-二進(jìn)制轉(zhuǎn)換算法。四位十進(jìn)制數(shù)字M的BCD碼表示的一般表達(dá)式如下:

        M:A33A32 A31A30 A23A22 A21A20 A13A12 A11A10 A03A02 A01A00

        (其中Aij=0或1,i=0,1,2,3;j=0,1,2,3)

        它表示數(shù)字大小為:

        M=(A33·23+A32·22+A31·21+A30)·103+(A23·23+A22·22+A21·21+A20)·102+(A13·23+A12·22+A11·21+A10)·101+(A03·23+A02·22+A01·21+A00)

        先討論后面兩項(xiàng)之間的變換:

        (A13·23+A12·22+A11·21+A10)·101+(A03·23+A02·22+A01·21+A00)

        =(A13·23 +A12·22 + A11·21)·101+(A10·101+ A03·23 +A02·22 + A01·21) + A00

        =(A13·22 +A12·21 + A11)·101·2 +(A10·23 + A03·22 +A02·21 + A01- A10·3)·2 + A00

        以上變換是把十進(jìn)制個(gè)位的BCD碼8421表示中的權(quán)為1的這位右移出十進(jìn)制個(gè)位的BCD碼8421表示,而將十進(jìn)制十位的BCD碼8421表示中的權(quán)為1的這位右移出十進(jìn)制十位的BCD碼8421表示,進(jìn)入個(gè)位的BCD碼8421表示中重新組成新的個(gè)位的BCD碼8421表示:

        (B03·23+B02·22+B01·21+B00)=(A10·23+A03·22+A02·21+A01-A10·3)

        其中項(xiàng)-A10·3表示:在A10=1時(shí)需要減去3(用二進(jìn)制表示是11),在A10=0時(shí)則需要減去0,并且這種運(yùn)算只在個(gè)位的BCD碼8421表示內(nèi)部進(jìn)行。

        對(duì)更高位做同樣的變換得到表達(dá)式如下:

        M=[(B33·23+B32·22+B31·21+B30)·103+(B23·23+B22·22+B21·21+B20)·102+(B13·23+B12·22+B11·21+B10)·101+(B03·23+B02·22+B01·21+B00)+B-1·2-1]·2

        這里:B-1= A00,

        B03·23+B02·22+B01·21+B00=A10·23+A03·22+A02·21+ A01-A10·3

        B13·23+B12·22+B11·21+B10=A20·23+A13·22 + A12·21+A11-A20·3

        B23·23+B22·22+B21·21+B20=A30·23+A23·22+A22·21+ A21-A30·3

        B33·23+B32·22+B31·21+B30=0·23+A33·22+A32·21+ A31-0·3

        其中B33=0。這樣一輪變換表示M的BCD碼表示中各個(gè)數(shù)碼往右邊移動(dòng)一位,每個(gè)十進(jìn)制位的8421表示中權(quán)為1的位的數(shù)碼都移到低1位十進(jìn)制位的8421表示中重新組合成新的8421表示,新的一輪8421表示與原來(lái)一輪8421表示的關(guān)系如上。

        如果右移1位數(shù)碼表示除以2的話,B-1= A00成為M的最低的1位二進(jìn)制表示數(shù)碼。

        重復(fù)一次以上一輪變換得到M的最低2位二進(jìn)制表示數(shù)碼:C-1= B00,C-2=B-1= A00。

        這樣重復(fù)16輪變換,依次用Aij,Bij,B-k,Cij,C-k,…,Gij,G-k(i,j=0,1,2,3)來(lái)表示各輪變換的二進(jìn)制數(shù)碼,就得到M的二進(jìn)制表示所有的數(shù)碼。因Gij=0(i,j=0,1,2,3),所以,

        M=[G-1·2-1+ G-2·2-2+ G-3·2-3+…+ G-16·2-16] ·216

        = G-1·215+ G-2·214+ G-3·213+…+ G-16。

        G-16= A00,G-15= B00,…,G-1= F00。

        2 N位BCD-二進(jìn)制轉(zhuǎn)換電路原理框圖

        以四位十進(jìn)制數(shù)字為例,N位BCD-二進(jìn)制轉(zhuǎn)換電路原理框圖如圖1所示。

        A[15..0]是四位十進(jìn)制數(shù)的BCD輸入,ck是移位時(shí)鐘,ret為復(fù)位,共有四個(gè)BCD-bit單元。每個(gè)單元負(fù)責(zé)一位BCD數(shù)碼的移位和減3或減0操作。轉(zhuǎn)換過(guò)程是先并行輸入四位十進(jìn)制數(shù)的BCD碼,然后復(fù)位。奇次時(shí)鐘到來(lái)時(shí)移位,偶次時(shí)鐘到來(lái)時(shí)4個(gè)單元各自進(jìn)行減3或減0。每移位一次有一位二進(jìn)制數(shù)碼進(jìn)入移位寄存器bit-shift單元,經(jīng)過(guò)了32個(gè)時(shí)鐘,16次移位完成整個(gè)轉(zhuǎn)換過(guò)程。

        3 BCD-bit單元VHDL代碼

        LIBRARY ieee;

        USE ieee.std_logic_1164.ALL;

        ENTITY bcd_bit IS

        PORT ( ck : IN STD_LOGIC;

        a : IN STD_LOGIC_VECTOR(3 DOWNTO 0);

        b : IN STD_LOGIC;

        ret : IN STD_LOGIC;

        c : OUT STD_LOGIC;

        c3 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ) ;

        END bcd_bit;

        ARCHITECTURE one OF bcd_bit IS

        signal t : std_logic;

        signal q ,c1,c2: std_logic_vector(3 downto 0);

        BEGIN

        c <= c1(0); c3 <= c1;

        PROCESS( ck,ret )

        BEGIN

        if ret = '0' then

        t <= '0';

        elsif ck'event and ck = '1' then

        t <= not t;

        end if;

        END PROCESS ;

        PROCESS( ck,ret,a ) --移位

        BEGIN

        if ret = '0' then

        c1 <= a;

        elsif ck'event and ck = '1' then

        if t='0' then

        c1(3)<=b;c1(2)<=c1(3);c1(1)<=c1(2);c1(0)<=c1(1);

        else c1<=c2;

        end if;

        end if;

        END PROCESS ;

        PROCESS( c1 ) --減3或0

        BEGIN

        CASE c1 IS

        WHEN "0000" => c2 <= "0000" ;

        WHEN "0001" => c2 <= "0001" ;

        WHEN "0010" => c2 <= "0010" ;

        WHEN "0011" => c2 <= "0011" ;

        WHEN "0100" => c2 <= "0100" ;

        WHEN "0101" => c2 <= "0101" ;

        WHEN "0110" => c2 <= "0110" ;

        WHEN "0111" => c2 <= "0111" ;

        WHEN "1000" => c2 <= "0101" ;

        WHEN "1001" => c2 <= "0110" ;

        WHEN "1010" => c2 <= "0111" ;

        WHEN "1011" => c2 <= "1000" ;

        WHEN "1100" => c2 <= "1001" ;

        WHEN "1101" => c2 <= "1010" ;

        WHEN "1110" => c2 <= "1011" ;

        WHEN "1111" => c2 <= "1100" ;

        WHEN OTHERS => c2 <= "0000" ;

        END CASE ;

        END PROCESS ;

        END ;

        4 仿真結(jié)果

        本設(shè)計(jì)用Quartus II仿真,功能正確。典型仿真結(jié)果如圖2~圖4所示。

        在圖2中,復(fù)位后,經(jīng)過(guò)了32個(gè)時(shí)鐘,16次移位完成整個(gè)轉(zhuǎn)換過(guò)程。

        在圖3中,7896轉(zhuǎn)換成0001111011011000。

        在圖4中,6797轉(zhuǎn)換成0001101010001101。

        在圖5中,7657轉(zhuǎn)換成0001110111101001。

        參考文獻(xiàn)

        [1] 王迎春.一種基于簡(jiǎn)單移位的二-十進(jìn)制相互轉(zhuǎn)換算法[J].電子學(xué)報(bào),2003(2):221-224.

        [2] 潘昊,鐘珞,陳杰.單片機(jī)十六進(jìn)制數(shù)與BCD碼轉(zhuǎn)換新探討[J].微機(jī)發(fā)展,1997(6):35-36.

        [3] 潘松.EDA技術(shù)與VHDL[M].北京:清華大學(xué)出版社,2005.

        猜你喜歡
        移位
        探討近視控制功能型眼鏡配戴后的鏡片移位問題
        MDT診療模式在顳下頜關(guān)節(jié)盤不可復(fù)性盤前移位中的治療效果
        口腔正畸治療牙周病致前牙移位的臨床療效
        再生核移位勒讓德基函數(shù)法求解分?jǐn)?shù)階微分方程
        大型球罐整體移位吊裝技術(shù)
        大型總段船塢建造、移位、定位工藝技術(shù)
        Σ(X)上權(quán)移位算子的不變分布混沌性
        微小移位的B型股骨假體周圍骨折的保守治療
        手掌小魚際皮瓣逆行移位修復(fù)手指皮膚缺損
        臂叢神經(jīng)叢內(nèi)神經(jīng)移位治療周圍神經(jīng)損傷
        亚洲性爱视频| 亚洲女同系列在线观看| 超碰国产精品久久国产精品99| 国产精品18久久久| 欧美精品一区视频| 亚洲精品2区在线观看| 亚洲精品中文字幕导航| 欧美猛少妇色xxxxx猛交| 国内精品九九久久久精品| 国产成人AⅤ| 亚洲女同同性一区二区| 777国产偷窥盗摄精品品在线 | 国产精品亚洲第一区二区三区| 任你躁国产自任一区二区三区| 亚洲AV无码一区二区三区天堂网| 日本岛国视频在线观看一区二区 | 亚洲AV无码乱码一区二区三区| 国产精品女同一区二区软件| 午夜性色一区二区三区不卡视频| 艳妇乳肉豪妇荡乳av无码福利| 国产av大片在线观看| av网站大全免费在线观看| 国产在线 | 中文| 96精品在线| 国产成人高清亚洲一区二区| 亚洲线精品一区二区三区| 蜜臀av无码精品人妻色欲| 亚洲综合一| 日韩人妻免费视频一专区| 中文无码精品a∨在线观看不卡| 久久久久成人亚洲综合精品| 一级午夜理论片日本中文在线 | 亚洲av鲁丝一区二区三区黄| 亚洲综合久久久| 一区二区在线观看视频亚洲| 国产又黄又硬又粗| 天堂sv在线最新版在线| av一区二区不卡久久| 日韩精品人妻久久久一二三 | 亚洲天堂一区二区精品| 色偷偷色噜噜狠狠网站30根|