《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 數值計算中Bcd碼校驗電路的分析與設計
數值計算中Bcd碼校驗電路的分析與設計
摘要: 本文通過對Bcd碼算法和并/串行BCD校驗電路的分析,提出了一種高效,快速的BCD校驗模塊。由上面仿真結果可知,此種電路速度較快,硬件電路簡單。適合實時處理系統。
Abstract:
Key words :
 

引言

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

  方法1:十--二進制轉換電路將輸入的十進制數據轉換為相應的二進制數據,微處理器內部算術邏輯單元仍然執行二進制數據運算微操作,運算結果再進行二--十進制轉換,將結果以十進制形式輸出。

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

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

  校驗原理

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

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

  1000

 ?。?0111

  1111

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

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

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

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

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

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

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

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

  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] TEM P_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;

  end

  else

  begin

  if(data_i[3]&&data_i[1] ||(data_i[3]&&data_i[2]) || cy_i==1)

  TEMP_RESULT = {1'b0,data_i } + {1'b0,4'b0110 } + cy_i;

  else

  begin

  TEMP_RESULT[3:0]=data_i;

  TEMP_RESULT[4]=cy_i;

  end

  data_o = TEMP_RESULT[3:0];

  z_o = | TEMP_RESULT[3:0];

  cy_o = TEMP_RESULT[4];

  end

  例如:兩個十進制數2189+8075的正確結果應為11064,可是,相加運算后的結果為FEH,為此應進行BCD調整。將為經校驗的相加結果 0010,1001,1000,1001(十進制2989)+1000,0000,0111, 0101(十進制8075)=1010,1001,1111,1110代人上述BCD校驗模塊,可得仿真結果如圖四。

   有圖可知data_o為1064 且進位輸出為1,即總的結果為11064,這與2989+8075=11064的結果是一致的。

  結束語

  本文通過對Bcd碼算法和并/串行BCD校驗電路的分析,提出了一種高效,快速的BCD校驗模塊。由上面仿真結果可知,此種電路速度較快,硬件電路簡單。適合實時處理系統。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久视频国产精品免费视频在线| 一区二区三区国产盗摄| 精品不卡一区| 欧美日韩色婷婷| 国产一区二区三区高清| 欧美日韩在线视频一区| 欧美黑人一区二区三区| 亚洲一区二区欧美| 亚洲另类视频| 亚洲精品国产精品乱码不99| 亚洲黄色在线视频| 亚洲破处大片| 欧美性猛交一区二区三区精品| 在线亚洲一区观看| 亚洲少妇最新在线视频| 一本一本久久| 日韩一级黄色av| 亚洲最新视频在线| 亚洲午夜在线视频| 亚洲影院高清在线| 久久婷婷久久一区二区三区| 99精品视频一区| 亚洲第一精品夜夜躁人人爽| 欧美一区二区日韩一区二区| 欧美一级片在线播放| 亚洲高清视频一区二区| 欧美日韩一区二区在线| 欧美aⅴ一区二区三区视频| 久久久噜噜噜久噜久久| 久久久福利视频| 久久久久久一区| 久久久最新网址| 嫩草国产精品入口| 欧美日本高清| 欧美日韩亚洲一区二区三区| 欧美三级午夜理伦三级中视频| 欧美视频在线免费看| 国产精品女人网站| 国产一区二区日韩精品欧美精品| 国产一区二区三区高清| 亚洲高清123| 亚洲精品一二三区| 亚洲午夜一区二区三区| 欧美少妇一区| 一区二区久久| 亚洲综合色丁香婷婷六月图片| 亚洲视频图片小说| 午夜精品在线观看| 久久精品夜色噜噜亚洲a∨| 久久婷婷久久| 欧美日韩国产三级| 国产欧美日韩一区二区三区在线 | 国产精品日韩久久久| 国产精品日韩欧美综合| 国产精品日韩精品欧美精品| 欧美日韩高清一区| 国产精品国产三级国产aⅴ入口 | 欧美一级久久久| 亚洲高清久久| 欧美成人午夜激情视频| 国产私拍一区| 在线日韩中文| 亚洲午夜视频| 亚洲国产一区二区三区在线播| 中国日韩欧美久久久久久久久| 欧美自拍偷拍午夜视频| 欧美高清在线一区二区| 国产精品二区在线观看| 在线观看久久av| 一区二区黄色| 亚洲国产精品成人综合色在线婷婷| 亚洲视频网站在线观看| 美女免费视频一区| 国产精品视频一| 亚洲日韩欧美视频| 久久gogo国模裸体人体| 中日韩男男gay无套| 久久手机精品视频| 国产精品久久久亚洲一区| 亚洲第一区在线观看| 亚洲一区国产一区| 亚洲精品四区| 久久久91精品国产一区二区三区| 欧美日韩在线免费观看| 禁断一区二区三区在线| 亚洲欧美日韩高清| 在线视频亚洲| 欧美刺激性大交免费视频 | 在线视频日本亚洲性| 亚洲国产精品美女| 欧美影院视频| 欧美视频在线一区二区三区| 在线播放不卡| 日韩视频在线一区二区三区| 中日韩男男gay无套| 亚洲啪啪91| 99xxxx成人网| 亚洲电影天堂av| 亚洲一区二区网站| 亚洲剧情一区二区| 亚洲第一中文字幕| 国产欧美一区二区三区视频| 欧美电影在线观看| 欧美视频二区| 国产精品日韩在线播放| 欧美—级高清免费播放| 欧美在线观看视频| 欧美成人亚洲| 日韩午夜中文字幕| 亚洲欧洲日本国产| 免费欧美日韩| 亚洲一级特黄| 亚洲第一级黄色片| 在线一区二区日韩| 欧美成人国产一区二区| 国产亚洲一区二区在线观看| 亚洲愉拍自拍另类高清精品| 中文亚洲欧美| 99pao成人国产永久免费视频| 欧美在线亚洲一区| 欧美午夜电影在线观看| 亚洲人成7777| 亚洲精品偷拍| 欧美高清在线精品一区| 国内精品视频久久| 狂野欧美激情性xxxx| 欧美日韩免费一区| 亚洲国产精品美女| 亚洲激情综合| 母乳一区在线观看| 亚洲欧洲在线一区| 夜夜精品视频| 欧美视频四区| 国产精品99久久久久久人| 亚洲制服欧美中文字幕中文字幕| 欧美日韩一区在线观看| 在线亚洲免费| 国产亚洲一区二区在线观看 | 欧美三级视频在线播放| 一区二区欧美日韩| 欧美va亚洲va香蕉在线| 国产精品第十页| 国产日韩欧美三区| 欧美专区在线播放| 久久蜜臀精品av| 国产在线日韩| 亚洲高清不卡在线| 亚洲视频网在线直播| 性欧美videos另类喷潮| 欧美成人性生活| 国产精品资源在线观看| 亚洲天堂激情| 91久久精品国产| 久久久久久久久久看片| 国产精品免费一区二区三区观看| 狠狠色狠狠色综合系列| 99国产精品视频免费观看| 国内精品久久久久久久影视麻豆| 亚洲第一在线综合网站| 午夜视频久久久| 亚洲视频网站在线观看| 久久精品青青大伊人av| 久久婷婷av| 欧美日韩播放| 国产欧美va欧美不卡在线| 精品成人一区二区| 在线亚洲伦理| 欧美影院午夜播放| 欧美日韩一区二区三区高清| 亚洲一区二区三区三| 久久久久久夜| 亚洲精品乱码久久久久久久久| 亚洲欧洲综合| 欧美日韩一区三区| 欧美一区二区在线看| 亚洲欧美日韩综合| 国产一区导航| 一本色道久久综合亚洲二区三区| 国产精品美女xx| 亚洲高清一区二| 国产精品成人免费| 亚洲国产免费看| 亚洲三级免费电影| 亚洲欧美日韩另类精品一区二区三区| 国产欧美在线观看| 一区二区三区成人| 韩国精品在线观看| 亚洲无限乱码一二三四麻| 国内精品久久久久影院薰衣草 | 亚洲精品一区二区三区蜜桃久| 亚洲国产精品久久久久秋霞影院 | 亚洲精品一区在线| 欧美制服丝袜第一页| 在线观看一区欧美| 亚洲国产精品电影| 国产精品av一区二区| 亚洲精品1区| 亚洲第一主播视频| 亚洲综合999| 亚洲成人影音|