目前共有10篇帖子。
【電路】用74HC165和74HC595構成的硬體乘法器
1樓 巨大八爪鱼 2017-1-25 22:03
3樓 巨大八爪鱼 2017-1-25 22:14
電路文件下載地址:http://pan.baidu.com/s/1gfqmhDh
4樓 巨大八爪鱼 2017-1-25 22:15
中間的165B的D1~D7接第一個乘數,D1為符號位,D0必須和D1相同。如圖所示接的是1010010=-46。
165C的D1~D7為另一個乘數,D0電平任意(可直接接地)。如圖所示接的是0110101=53。
通電後,先按START鍵複位並置入操作數,然後給63個時鐘脈衝(按CLK鍵63下),即可在輸出端得出計算結果(把左下角U15的Q0~Q7和U16的Q0~Q5拼在一起,11011001 111010,最高位為符號位,對應的十進制數是-2438)。
-46*53=-2438。
5樓 巨大八爪鱼 2017-1-25 22:16
此乘法器使用的演算法是:補碼一位乘法。
6樓 巨大八爪鱼 2017-1-25 22:17
回復5樓 @巨大八爪鱼 的內容:
此乘法器使用的演算法是:補碼一位乘法。
準確的說是:比較法
7樓 巨大八爪鱼 2017-1-25 22:36

乘法器數據表(每個CLK時鐘周期內各暫存器的數值變化情況):

http://pan.baidu.com/s/1o7IhTSA

表格「分步乘法部分」的單元格E2為第一個乘數,採用雙符號位,正數為00,負數為11。

單元格J2為第二個乘數,採用單符號位,最高位為任意電平X。

可以手動修改這兩個單元格的值(必須為8位二進制數),Excel自動計算其他單元格的值。

 

D65為最終U15_595A暫存器的值,J65為最終U16_595C暫存器的值。

 

8樓 巨大八爪鱼 2017-1-25 22:42

此電路還可以做一些改進:

1.通過14個按鍵或開關輸入兩個乘數

2.通過14個LED燈輸出計算結果

3.由於按63下CLK按鍵很麻煩。可以乾脆接一個晶振(比如8MHz的)作為時鐘信號,每計算完畢一次就自動將START置0重新裝載操作數並計算。並且仿照單片機的複位電路,接一個10μF的電容實現上電複位(START自動從0變到1)。

這樣就可以完全去掉那兩個按鍵,只要操作數一變,計算結果馬上就顯示出來了。

9樓 巨大八爪鱼 2017-1-25 22:43
實際上在這個電路中,如果按CLK鍵63次以上,雖然各暫存器還在工作,但輸出不會改變,直到按下START鍵複位(重裝操作數)
10樓 巨大八爪鱼 2017-2-4 21:30

【本電路用到的主要集成電路器件】

與門12個:74HC08三個

與非門4個:74HC00一個

或門6個:74HC32兩個,閒置2個或門

非門5個:74HC04一個,閒置1個非門

異或門3個:74HC86一個,閒置1個異或門

D觸發器4個:74HC74一個

74HC161計數器兩個

74HC165併入串出暫存器三個

74HC595串入並出暫存器兩個

11樓 巨大八爪鱼 2017-2-4 21:33

一共用到集成電路16個。其中集成門電路8個。

若每個集成門電路的價格是1.5元,其餘集成電路每個3元,那麼成本就是36元。

可見,用74系列晶片//chip搭建數字電路的成本很高,還不如直接使用單片機。

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
 
 
©2010-2025 Arslanbar [手機版] [桌面版]
除非另有聲明,本站採用創用CC姓名標示-相同方式分享 3.0 Unported許可協議進行許可。