看板 Electronics 關於我們 聯絡資訊
版上的大大們好 小弟最近在研究如何以邏輯閘及flip-flop兜出一個16bit CPU 是一所國外大學的課堂作業題 題目是給8個指令,ADD、ADDI、NAND、LUI、SW、LW、BEQ、JALR 看完ISA之後,接著看它提供的Sequential Implementation , 知道每個指令的實現架構 ,主要就是包含PC、Instruction Memory、register file及控制端 但是需只以邏輯閘和flip-flop自己設計電路來完成,讓我摸不著頭緒 想請問有經驗的版友們該從何下手 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.193.183.26 ※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1500717044.A.219.html ※ 編輯: eamansf96xs (123.193.183.26), 07/22/2017 17:53:12
narcissusli: 看學長兜過…足足兩張桌子的麵包板 07/22 18:21
Schottky: 我做過的只需要實作一個除法指令,但可以使用 ROM 07/22 18:25
Schottky: 和一些較高級的邏輯閘如 shift register 之類 07/22 18:26
mmonkeyboyy: 你是要做PCB版子級的還是? 07/22 20:22
mmonkeyboyy: ok不管那種我都做過到是了 沒有你想的困難 有序列 07/22 20:23
mmonkeyboyy: 羅輯了 就丟去 synthesis 去掉不能用的東西 07/22 20:23
mmonkeyboyy: 這樣出來的東西就能用現有邏輯閘搭了 07/22 20:25
mmonkeyboyy: 純用麵包版 排插這種做法 大概要2張A0可以完成16bit 07/22 20:27
mmonkeyboyy: MIPS CORE 的cpu 07/22 20:28
mmonkeyboyy: 還給了邏輯算不錯了 一般都是丟isa出來 剩下自己想 07/22 20:29
mmonkeyboyy: 辦法 ROM做除法可以加速啊 就是arithmetic研究方向 07/22 20:30
mmonkeyboyy: shift R也可以用一般邏輯組合啦先組出switch就能組 07/22 20:31
mmonkeyboyy: 出其他的 像是組出mux也行 07/22 20:31
mmonkeyboyy: 概念上就是要的邏輯要走universal gates 其實就是一 07/22 20:32
mmonkeyboyy: 直重覆拉線走線的事 有排插排線就省事 07/22 20:33
eamansf96xs: 感謝monkey的回答 07/22 20:34
eamansf96xs: 我是想在沒看過合成的狀況下自己想出來 07/22 20:35
mmonkeyboyy: 只是 vlsi級的用 layout自己做 就有網表就可以了 07/22 20:36
mmonkeyboyy: memory 就用dff做 應該就差不多了 07/22 20:44
eamansf96xs: 感謝monkey 之後有問題可站內信您嗎? 07/22 20:45
mmonkeyboyy: 可以啊 不過 你還想知道些什麼XD 07/22 20:53
mmonkeyboyy: 說到沒有合成自己做這檔事 這變成你各種元件要很強 07/22 21:03
mmonkeyboyy: 啦 到也不是不行 我只有 ALU會這樣 CU這樣會死人 07/22 21:04
cpyi: 先畫方塊圖 規劃暫存器 有做過但是是用verilog 實現 07/22 21:21
cpyi: 很geek.. 這個project. 07/22 21:22
mmonkeyboyy: 其實不geek 有些美國學校大學生數位課程就是這個 07/22 21:26
mmonkeyboyy: 羅電課程教到arithmetic 和 state machine做法 07/22 21:29
mmonkeyboyy: 實驗課就是完成麵包版電路 上數位設計時就實做 07/22 21:30
oldhan1: 國外一堆範例都可以參考 6502 PIC 等八位元 uP 09/07 14:03