国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

數(shù)字IC手撕代碼-半加器、全加器

2022-03-16 14:59 作者:不吃蔥的酸菜魚  | 我要投稿

????????大家好我是酸菜魚,這個系列著重講解數(shù)字IC或FPGA實習面試及秋招面試的高頻手撕代碼題 。

往期代碼題:

數(shù)字ic手撕代碼-導覽目錄 - 嗶哩嗶哩 (bilibili.com)

數(shù)字IC手撕代碼-分頻器(任意奇數(shù)分頻) - 嗶哩嗶哩 (bilibili.com)

數(shù)字IC手撕代碼-序列檢測(狀態(tài)機寫法) - 嗶哩嗶哩 (bilibili.com)

數(shù)字IC手撕代碼-分頻器( 任意小數(shù)分頻) - 嗶哩嗶哩 (bilibili.com)

......

完全內(nèi)容,請前往導覽目錄查看。

半加器:

????????所謂半加器,就是不考慮進位的加法器,只有兩個輸入和兩個輸出;輸入A和B,輸出和數(shù)sum和進位cout,半加器真值表如下:

半加器真值表

????????寫一個半加器其實就是把各個參數(shù)之間的關系用verilog描述出來。很容易可以得到:

從而有verilog代碼:

1bit 半加器

????????然而大多數(shù)公司的手撕代碼完半加器和全加器后,還會讓你手繪門電路,所以在這里我也提一下門電路畫法。

????????門電路其實很好畫,知道了信號之間的與非關系,就很好處理了,比如半加器的cout就是A和B的與,直接用一個兩輸入與門就能連接。而sum是A和B的異或,用一個異或門就可以得到,當然也不排除公司故意不讓你用異或門的情況。異或轉(zhuǎn)換成與門如下:

異或會用門電路畫了,那么半加器的門電路就很簡單了。

全加器:

????????全加器就是在半加器的基礎上引入一個進位輸入,總共三個輸入兩個輸出。全加器真值表如下:

1bit全加器真值表

????????這個不要背表達式,如果背表達式,正式手撕代碼的時候很容易忘記,然后寫錯(雖然全加器很簡單。)我們推導一下表達式。

????????這里的輸出一共有兩個,一個sum,一個進位cout。sum的值是A+B+cin然后去掉進位得到的,也就是說A、B、cin 中,如果輸入1的個數(shù)是奇數(shù),則sum為1,輸入1的個數(shù)為偶數(shù)(含零)則sum為0。根據(jù)這個奇偶判定,可以想到用異或操作,所以得到表達式:

????????cout的值也好分析,cout是加和出來的進位,也就是說,如果A、B、cin三個數(shù)中,有兩個及以上個1,則cout為1,這個容易得到表達式:

代碼:

????????全加器的門電路就不畫了,原理和半加器是一致的,信號有點多容易弄混,所以畫的時候細心一點,就沒什么問題。

數(shù)字IC手撕代碼-半加器、全加器的評論 (共 條)

分享到微博請遵守國家法律
武鸣县| 华亭县| 深圳市| 安丘市| 江都市| 平阴县| 延安市| 凌云县| 宁都县| 通榆县| 高唐县| 嫩江县| 油尖旺区| 山东| 铅山县| 剑河县| 长沙县| 邳州市| 吉木乃县| 武鸣县| 宣武区| 炉霍县| 玉环县| 玉树县| 郎溪县| 巩留县| 神农架林区| 台东县| 鹰潭市| 大姚县| 象山县| 永仁县| 长春市| 咸丰县| 专栏| 广丰县| 洛扎县| 徐汇区| 石门县| 周至县| 廊坊市|