1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 數(shù)值計算中Bcd碼校驗電路的分析與設(shè)計

        時間:2023-03-18 22:41:58 理工畢業(yè)論文 我要投稿
        • 相關(guān)推薦

        數(shù)值計算中Bcd碼校驗電路的分析與設(shè)計

        摘要:在計算機數(shù)值計算中,數(shù)值經(jīng)常是以BCD碼進(jìn)行運算的.因而BCD校驗電路是一個非常重要的硬件邏輯。其不但影響到數(shù)值計算的正確與否,還對整個運算的速度有著決定作用。本文首先分析了BCD碼校驗原理,進(jìn)而從并行、串行兩種電路結(jié)構(gòu)分析了BCD碼校驗邏輯。最后提出了一種高效,快速的BCD 碼驗證電路并對其進(jìn)行了仿真。

        引言

        微處理器的工作過程是大量數(shù)據(jù)的輸入--運算--輸出的過程,其中相當(dāng)數(shù)量的數(shù)據(jù)使用十進(jìn)制形式表達(dá)。使用者希望微處理器的輸入數(shù)據(jù)和輸出結(jié)果能使用十進(jìn)制形式表達(dá),而在微處理器內(nèi)采用二進(jìn)制表示和處理數(shù)據(jù)更方便,所以在二者之間的數(shù)制轉(zhuǎn)換是必要的。通常采用兩種方式解決這一問題。

        方法1:十--二進(jìn)制轉(zhuǎn)換電路將輸入的十進(jìn)制數(shù)據(jù)轉(zhuǎn)換為相應(yīng)的二進(jìn)制數(shù)據(jù),微處理器內(nèi)部算術(shù)邏輯單元仍然執(zhí)行二進(jìn)制數(shù)據(jù)運算微操作,運算結(jié)果再進(jìn)行二--十進(jìn)制轉(zhuǎn)換,將結(jié)果以十進(jìn)制形式輸出。

        方法2:算術(shù)邏輯單元對二進(jìn)制數(shù)據(jù)處理能力的前提下,增加少量硬件線路,使之對某種二進(jìn)制編碼形式表示的十進(jìn)制數(shù)據(jù)具有直接處理能力,該算術(shù)邏輯單元能夠接收特定二進(jìn)制編碼構(gòu)成的十進(jìn)制數(shù)據(jù),可以產(chǎn)生相同編碼組成的計算結(jié)果,在數(shù)據(jù)處理過程中該單元執(zhí)行十進(jìn)制數(shù)據(jù)運算微操作。

        微處理器使用中涉及大量的數(shù)據(jù)輸入輸出操作,顯然方法1不是理想的選擇,因而從提高機器的運行效率,簡化機器結(jié)構(gòu)和保證系統(tǒng)時序結(jié)構(gòu)的規(guī)整性考慮,方法2更有實用價值。 所以本文講述了方法2為算法依據(jù)的BCD加減電路。

        校驗原理

        在計算機得數(shù)值計算中,數(shù)值經(jīng)常是以BCD碼表示的十進(jìn)制進(jìn)行運算的。即一位BCD碼用4位二進(jìn)制位表示。但是BCD的加法需要兩個加法器來完成,如果分析一下BCD數(shù)的加法過程,原因就很清楚。請看下面:

        令A(yù)=1000,B=0111,這兩個數(shù)都是正確的BCD碼,如果兩個操作數(shù)直接相加,結(jié)果不是一個BCD碼:

        1000

        + 0111

        1111

        正確的BCD碼加法運算應(yīng)為1000+0111=(1)0101即8+7=15。其它BCD碼操作數(shù)運算的結(jié)果也能產(chǎn)生不正確的BCD碼結(jié)果。實際上當(dāng)結(jié)果大于9或者有進(jìn)位時,就要進(jìn)行BCD的校驗,以確保結(jié)果的正確性。

        對于產(chǎn)生進(jìn)位得情況,加法器直接提供了二進(jìn)制的進(jìn)位輸出,即BCD修正信號Y=C.而對于結(jié)果大于9,需要修正的數(shù)為1010-1111。

        把它們作為四變量布爾表達(dá)式的最小項,就能化簡邏輯。即Y=E3E2 E3E1.其中E3 、E2、E1、E0是加法器的和的輸出。綜合以上結(jié)果可得BCD修正信號Y=E3E2 E3E1 C.修正電路如圖一所示

        下面就已四位并行加法器和一位串行加法器兩種電路形式來討論BCD碼的驗證。

        圖二 4位并行加法器BCD加法電路

        圖二所示為4位并行的BCD加法器電路。其中上面加法器的輸入來自低一級的BCD數(shù)字。下面加法器BCD的輸出E3、E2、E1、E0和COUT至高一級BCD數(shù)字,其A3和A1位接地,即當(dāng)BCD校驗信號為真時Y=1,A3A2A1A0=0110,以實現(xiàn)加6的調(diào)整.當(dāng)不需要BCD調(diào)整時Y=0,此時A3A2A1A0=0000,從而使輸出結(jié)果無變化.

        雖然4位并行加法器運算速度較快,但是所用邏輯門較多。圖三所示為一位串行BCD加法器。它是以犧牲速度以達(dá)到減少硬件邏輯門的目的,這種電路在對頻率要求不高的系統(tǒng)中非常之適用。其中ADDER1、ADDER2均為一位全加器。ADDER1做主運算器,ADDER2做BCD校驗運算器,不管是否做BCD校驗,ADDER2的初始進(jìn)位、借位始終為“1”。

        圖三中Z型門為延時電路,延時一個時鐘周期,這樣在外部電路控制下,經(jīng)過四個時鐘周期,得到一位十進(jìn)制BCD結(jié)果E3E2E1E0.由電路圖所以當(dāng)C (E3E2 E3E1)邏輯值為‘1’時,控制多路選擇器選擇A通路(A通路為序列1001),當(dāng)C (E3E2 E3E1)為‘0’時,選擇B通路(B通路序列為1111),即需要校驗時,多路選擇器輸出序列1001;不需要校驗時,輸出序列1111,與Z型門的輸出對應(yīng)相加,并且ADDER2的初始進(jìn)位始終為‘1’,由此可完成BCD的校驗工作。

        圖三 一位串行BCD加法器電路

        下面是基于4位并行BCD加法器算法的一種快速BCD的加法器VERILOG硬件描述語言程序及其仿真結(jié)果。

        module bcd_check (data_i,data_o,cy_i,cy_o,en,z_i,z_o);

        input data_i;

        input cy_i;

        input z_i;

        input en; //insructure

        output cy_o;

        output data_o;

        output z_o;

        wire [3:0] data_i;

        wire cy_i;

        wire en;

        reg z_o;

        reg cy_o;

        reg [3:0] data_o;

         

        //}} End of automatically maintained section

        reg [4:0] TEMP_RESULT;

         

        always @(data_i or cy_i or en )

        if(en == 0)

        begin

        cy_o=cy_i;

        data_o=data_i;

        z_o=z_i;

        【數(shù)值計算中Bcd碼校驗電路的分析與設(shè)計】相關(guān)文章:

        教育論文:淺談教學(xué)設(shè)計中的任務(wù)分析11-21

        脈寬調(diào)制信號電路設(shè)計報告05-13

        我國物權(quán)法中預(yù)告登記的范圍分析07-19

        商標(biāo)翻譯中的文化因素分析論文05-03

        淺談統(tǒng)計分析在企業(yè)中的運用12-20

        鐵路短區(qū)間特殊站間聯(lián)系電路設(shè)計06-14

        平面廣告設(shè)計中的科學(xué)性和藝術(shù)性分析論文05-01

        分析論文答辯中遇到的問題及解決對策05-31

        本量利分析在制造企業(yè)中的應(yīng)用論文04-22

        民族音樂在高校中現(xiàn)狀的原因分析論文08-14

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>