国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

FPGA學習系列:32. 二進制轉十進制的設計

FPGA學習交流 ? 2018-08-28 16:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

設計背景:

二進制轉十進制在設計應用中十分的廣泛。尤其在AD轉化中是必須所用到的一個小知識點,學習二進制轉十進制的方法顯的非常的重要。今天就和筆者來學習二進制轉十進制的方法,通過簡單的學習來掌握這么一門知識。

設計原理:

本次的設計主要是一個簡單的二選一數據選擇器,我們的設計主

二進制中只有 0 和 1 兩個狀態,可以表示 0、1 兩種狀態的電 子器件很多,如開關的接通和斷開,晶體管的導通和截止、磁元 件的正負剩磁、電位電平的低與高等都可表示 0、1 兩個數碼。使 用二進制,電子器件具有實現的可行性。

二進制數的運算法則少,運算簡單,使計算機運算器的硬件結 構大大簡化。由于二進制 0 和 1 正好和邏輯代數的假(false)和 真(true)相對應,有邏輯代數的理論基礎,用二進制表示二值 邏輯很自然。

電子器件中,所有的數據都是用二進制來表示的。

2.BCD

BCD 碼(Binary-Coded Decimal)亦稱二進碼十進數或二-十

進制代碼。用4位二進制數來表示1位十進制數中的0~910 數碼。BCD 碼是一種二進制的數字編碼形式,用二進制編碼的十 進制代碼。BCD 碼這種編碼形式利用了四個位元來儲存一個十進 制的數碼,使二進制和十進制之間的轉換得以快捷的進行。

3.實現方法

1)10求余法

將需要換的字除然后對10求余得出數各個 位上的字。8b1000_000010中的128將此數 字對10余,“8“8”賦最低的4 此數字(128)10得出12(在FPGA計算,自取整 10,然得出“22”賦給低的4。將此 數字(128)除以100,得出1,對10余,然得出“1 “1”賦給另外的4位。這樣就轉換出了BCD碼。

這類方法中,利用了大量的除法和求余,占用了大量的邏輯資 源。但是,實現比較簡單,如果芯片的邏輯資源足夠的話,可以 采取使用這種方法。

2)大四加三法

image.png


進行移位,然后進行判斷。如果大于四,則加三。最后得出我 們想要的BCD(下是按轉換7講解的



架構圖如下










bin_data[7:0]:輸入的二進制數據。

bin_data[11:0]:輸出的BCD碼(輸入的二進制數據為8位,最大 8’b1111_1111(255),四位表示一個BCD故而12

設計代碼:

設計模塊

module bin_to_bcd(bin, bcd);

input [7:0] bin;

output [11:0] bcd;


wire [19:0] shift_reg [5:0];


assign shift_reg[5] = {9'b0,bin,3'b0};


bcd_modify u1(.bcd_in(shift_reg[5]), .bcd_out(shift_reg[4]));

bcd_modify u2(.bcd_in(shift_reg[4]), .bcd_out(shift_reg[3]));

bcd_modify u3(.bcd_in(shift_reg[3]), .bcd_out(shift_reg[2]));

bcd_modify u4(.bcd_in(shift_reg[2]), .bcd_out(shift_reg[1]));

bcd_modify u5(.bcd_in(shift_reg[1]), .bcd_out(shift_reg[0]));


assign bcd = shift_reg[0][19:8];


endmodule

module bcd_modify(bcd_in, bcd_out);

input [19:0] bcd_in;

output [19:0] bcd_out;

wire [19:0] bcd_reg;


bcd_sigle_modify u1(.bcd_in(bcd_in[19:16]), .bcd_out(bcd_reg[19:16]));

bcd_sigle_modify u2(.bcd_in(bcd_in[15:12]), .bcd_out(bcd_reg[15:12]));

bcd_sigle_modify u3(.bcd_in(bcd_in[11:8]), .bcd_out(bcd_reg[11:8]));

assign bcd_reg[7:0] = bcd_in[7:0];

assign bcd_out = {bcd_reg[18:0],1'b0};


endmodule

module bcd_sigle_modify(bcd_in, bcd_out);

input [3:0] bcd_in;

output reg [3:0] bcd_out;


always @ (*)

begin

if (bcd_in > 4)

bcd_out = bcd_in + 3;

else

bcd_out = bcd_in;

end

endmodule

測試模塊

`timescale 1ns/1ps

module tb();


reg [7:0] bin;

wire [11:0] bcd;


initial begin


bin = 255;

#500 bin = 20;


#500 bin = 125;


#500 $stop;

end

bin_to_bcd bin_to_bcd_dut(

.bin(bin),

.bcd(bcd)

);

endmodule

仿真:

從仿真中可以看出本次設計的正確性,測試中我們輸出的二進制和為8個1也就是255,轉化為10進制后 按16進制顯示,也就是255,通過驗證設計正確。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1660

    文章

    22408

    瀏覽量

    636242
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    CDx4HC283與CDx4HCT283:4位二進制全加器的技術解析與應用指南

    CDx4HC283與CDx4HCT283:4位二進制全加器的技術解析與應用指南 在數字電路設計領域,加法器是實現數值運算的基礎元件之一。今天我們要深入探討的CDx4HC283和CDx4HCT283
    的頭像 發表于 01-30 17:20 ?642次閱讀

    十進制計算機硬件體系結構及“獨值”量化邏輯運算革命(一)

    采用“獨值”量化邏輯理論設計十進制數字計算機,十進制網絡計算機,十進制模擬計算機,十進制模糊計算機,實現計算機類型多樣化,計算機使用進位制系統多樣化,打破
    的頭像 發表于 01-29 09:13 ?972次閱讀
    <b class='flag-5'>十進制</b>計算機硬件體系結構及“獨值”量化邏輯運算革命(一)

    德州儀器4位二進制全加器:SN54/74系列的技術剖析

    德州儀器4位二進制全加器:SN54/74系列的技術剖析 在數字電路設計中,加法器是實現算術運算的基礎組件。德州儀器的SN54283、SN54LS283、SN54S283、SN74283
    的頭像 發表于 01-28 17:05 ?472次閱讀

    探索CD54/74AC283與CD54/74ACT283:高效4位二進制加法器的奧秘

    探索CD54/74AC283與CD54/74ACT283:高效4位二進制加法器的奧秘 在電子設計領域,加法器是實現數字運算的基礎元件之一。今天,我們將深入研究德州儀器(Texas
    的頭像 發表于 01-28 16:50 ?427次閱讀

    CDx4HC283和CDx4HCT283:高速CMOS邏輯4位二進制全加器的詳細解析

    和CDx4HCT283系列包含4位二進制加法器,其中HCT設備具有與TTL電壓兼容的輸入。這些器件能夠將兩個4位二進制數相加,并在和超過15時生成
    的頭像 發表于 01-19 14:50 ?315次閱讀

    解析CD54/74AC283與CD54/74ACT283:4位二進制加法器的卓越之選

    解析CD54/74AC283與CD54/74ACT283:4位二進制加法器的卓越之選 在電子設計領域,加法器是實現數字運算的基礎組件。今天我們要深入探討的是德州儀器(Texas
    的頭像 發表于 01-08 16:55 ?571次閱讀

    深入剖析CD54/74AC283與CD54/74ACT283:高性能4位二進制加法器

    深入剖析CD54/74AC283與CD54/74ACT283:高性能4位二進制加法器 在電子設計領域,加法器是一種基礎且關鍵的組件。今天,我們將詳細探討CD54/74AC283和CD54
    的頭像 發表于 01-04 17:25 ?705次閱讀

    CD54/74AC283與CD54/74ACT283:高性能4位二進制加法器的全面解析

    CD54/74AC283與CD54/74ACT283:高性能4位二進制加法器的全面解析 在電子設計領域,加法器是一種基礎且關鍵的數字電路,廣泛應用于各種計算和數據處理系統中。今天,我們要深入探討
    的頭像 發表于 12-31 17:10 ?1397次閱讀

    SN54F283與SN74F283:4位二進制全加器的技術剖析

    SN54F283與SN74F283:4位二進制全加器的技術剖析 在數字電路設計中,加法器是最基礎且關鍵的組件之一。今天我們要深入探討的是德州儀器(TI)的SN54F283和SN74F283這兩款4位
    的頭像 發表于 12-29 16:20 ?526次閱讀

    德州儀器4位二進制全加器:SN54/74283系列深度解析

    德州儀器4位二進制全加器:SN54/74283系列深度解析 在數字電路設計領域,加法器是構建復雜算術邏輯單元的基礎組件。德州儀器(TI)的SN54/74283系列4位二進制全加器憑借其
    的頭像 發表于 12-23 15:45 ?549次閱讀

    二進制查找(Binary Search)介紹

    二進制查找(Binary Search)用于在已排序的數組中執行二進制查找的函數。 int binary_search(int arr[], int size, int target
    發表于 12-12 06:54

    如何將圖像文件轉換為二進制文件?

    如何將圖像文件轉換為二進制文件
    發表于 09-05 08:28

    二進制數據處理方法分享

    時,我們如何去解析數據并且應用它們。本次的技術分享文章,我們就從如何傳輸數據和解析二進制數據來一步一步剝絲抽繭,搞清楚他的運作原理和二進制數據的數據結構。
    的頭像 發表于 07-30 15:41 ?2413次閱讀
    <b class='flag-5'>二進制</b>數據處理方法分享

    如何使用Keil將二進制文件加載到外部SPI Flash中?

    我想知道是否有辦法使用 Keil 將隨機二進制文件加載到外部 SPI 閃存中。二進制文件將通過 LPC54102(OM13077 EVK 板)。我知道一些用于 FPGA 的 ISE 允許您執行此作
    發表于 03-17 06:37

    無法使用密度化參數構建OpenVINO?二進制,怎么處理?

    無法使用密度化參數構建OpenVINO?二進制
    發表于 03-06 06:51