今天,當(dāng)我們坐在電腦前沉浸在游戲中,和遠(yuǎn)在他鄉(xiāng)的女友、朋友、家人聊天和語音,在互聯(lián)網(wǎng)上沖浪、查找資料,通過網(wǎng)絡(luò)購買自己喜歡的圖書和零食,這一切目前都覺得如此地愜意和自得。但是今天的一切,也許大部分都想不到,為了這一些是多少人前赴后繼,付出了可歌可泣的貢獻(xiàn)才得到地。
最近,HW HarmonyOS又沖上熱搜,大家都希望中國又一款自主可控的國產(chǎn)系統(tǒng),實現(xiàn)操作系統(tǒng)的“彎道超車”,回顧中國歷史上的操作系統(tǒng)有很多不堪回首的事件,但是曾經(jīng)發(fā)生的事情和有過的經(jīng)歷,卻可以讓我們更加珍惜這來之不易的幸福。而了解成功人/事的歷史,更可讓我們受益菲淺。 現(xiàn)在就讓我?guī)Т蠹胰セ仡櫼幌拢@有趣而又激勵人心的輝煌歷史。
News Watch
如今8位單片機的用途越來越少了,32位單片機越來越常見,但是你見過4-bit的CPU嗎?
1969年,日本計算機公司與英特爾合作,為其新的Busicom 141-PF *打印計算器設(shè)計12種定制芯片。英特爾工程師提出了一個只有四個芯片的家族,其中一個可以編程用于多種產(chǎn)品,從而激發(fā)了工程學(xué)的壯舉,極大地改變了電子學(xué)的發(fā)展方向。 當(dāng)時Intel給出的解決方案是一套四塊芯片組成的微型計算機,稱為MCS-4。
它包括一個中央處理單元(CPU)芯片-4004,以及一個用于定制應(yīng)用程序的支持的只讀存儲器(ROM)芯片,一個用于處理數(shù)據(jù)的隨機存取存儲器(RAM)芯片以及一個移位存儲-輸入/輸出(I / O)端口的寄存器芯片。從上面看出和目前商用計算機組成基本沒什么變化,可是那時候是1971年,感嘆其偉大!
英特爾生產(chǎn)了三種主要的源代碼變體:C4004,D4004和P4004。在英特爾C4004是待制造的第一芯片; 它具有白色陶瓷包裝本身上可見的灰色痕跡。C4004的生產(chǎn)一直持續(xù)到1976年中,開始生產(chǎn)Intel D4004。D4004具有塑料黑色陶瓷包裝。在英特爾P4004是塑料包裝的版本。
自1975年中以來,美國國家半導(dǎo)體公司和日立公司已經(jīng)開發(fā)了一些輔助資源。美國國家半導(dǎo)體生產(chǎn)了兩個版本:INS4004J和INS4004D。所述INS4004J是16針黑,陶瓷DIP,而INS4004D版本是16引腳側(cè)面釬焊,陶瓷DIP。另一個來源是HD35404所作日立。第三個來源是國際微系統(tǒng)公司(Microsystems International),該公司實際上是從1970年中期開始制造該芯片的增強版本的(也于1971年推出)。 幾種“變形體”的區(qū)別:
Manufacturer | Model | Package |
Intel | C4004 | 16-pin Ceramic DIP |
Intel | D4004 | 16-pin Ceramic DIP |
Intel | P4004 | 16-pin Plastic DIP |
National Semiconductor | INS4004D | 16-pin Ceramic DIP |
National Semiconductor | INS4004J | 16-pin side-brazed Ceramic DIP |
Hitachi | HD35404 | 16-pin DIP |
Microsystems International | MF7114 | ? |
4004具有16個引腳,用于I / O,存儲控制器,時鐘相位,電源和復(fù)位。
引腳和說明 | |||
別針 # | 引腳名稱 | 目的 | 解釋 |
1個 | D0 | 雙向數(shù)據(jù)總線引腳 | 與ROM和RAM的地址和數(shù)據(jù)通信發(fā)生在D0-D3上。 |
2個 | D1 | ||
3 | D2 | ||
4 | D3 | ||
5 | VSS | 主要供應(yīng) | |
6 | 時鐘階段1 | 時鐘輸入 | |
7 | 時鐘階段2 | ||
8 | 同步 | ROM和RAM同步 | 通過發(fā)信號通知時鐘在上升沿來同步ROM和RAM。 |
9 | 重啟 | 重置標(biāo)志 | 邏輯1清除所有處理器狀態(tài)寄存器,并強制程序計數(shù)器跳到地址0x0。RESET信號必須至少打開64個時鐘周期才能生效。 |
10 | 測試 | 測試邏輯狀態(tài) | 信號可以通過JCN指令進(jìn)行測試。 |
11 | 光盤 | CM-ROM輸出 | ROM選擇信號,用于從內(nèi)存中檢索數(shù)據(jù)。 |
12 | VDD | VSS-15±5% | |
13 | CM-RAM3 | CM-ROM輸出 | 系統(tǒng)中4002 RAM芯片的存儲體選擇信號。 |
14 | CM-RAM2 | ||
15 | CM-RAM1 | ||
16 | CM-RAM0 |
內(nèi)部結(jié)構(gòu)
News Watch
寄存器組
News Watch
名稱 | 大小(bits) | |
– | Accumulator | 4 |
– | Carry/Link | 1 |
索引寄存器 | Index Registers ( IR ) | (4+4)*8 |
程序寄存器 | Program Counter ( PC ) | 12 |
程序寄存器 | Program Counter ( PC ) | 12 |
堆棧指針 | Stack Pointer ( Stack ) | 12*3 |
臨時寄存器 | TEMP.REG | 4 |
– | INSTRUCTION REGISTER | 8 |
指令集
News Watch
(帶 * 號的是雙字指令,需要兩個指令周期(1指令周期 = 8時鐘周期))
基礎(chǔ)指令 | ||||
HEX | 助記符 | 指令字1 | 指令字2 | 功能 |
00 | NOP | 0000 0000 | – | 無 |
1 | *JCN | 0001 CCCC | AAAA AAAA | 當(dāng)條件C成立,跳轉(zhuǎn)到當(dāng)前ROM頁的A地址 |
2 | *FIM | 0010 RRR0 | DDDD DDDD | 取當(dāng)前頁D地址處的數(shù)據(jù),送至IR的R號寄存器對內(nèi) |
3 | FIN | 0011 RRR0 | – | 取IR中第0寄存器對數(shù)據(jù)作為ROM頁內(nèi)地址,將數(shù)據(jù)送至IR寄存器的R號寄存器對內(nèi) |
3 | JIN | 0011 RRR1 | – | 將IR中R號寄存器對內(nèi)數(shù)據(jù)作為間接跳轉(zhuǎn)地址進(jìn)行跳轉(zhuǎn) |
4 | *JUN | 0100 AAAA | AAAA AAAA | 無條件跳轉(zhuǎn)至地址A |
5 | *JMS | 0101 AAAA | AAAA AAAA | 無條件跳轉(zhuǎn)至地址A,將原地址保存在堆棧SP中 |
6 | INC | 0110 RRRR | – | RRRR寄存器+1 |
7 | *ISZ | 0111 RRRR | AAAA AAAA | RRRR寄存器+1,如果結(jié)果不為0,跳轉(zhuǎn)至頁內(nèi)地址A |
8 | ADD | 1000 RRRR | – | AC=AC+RRRR+C |
9 | SUB | 1001 RRRR | – | AC=AC-RRRR-C |
A | LD | 1010 RRRR | – | AC=RRRR |
B | XCH | 1011 RRRR | – | AC與RRRR交換 |
C | BBL | 1100 DDDD | – | 借助堆棧地址返回,AC=DDDD |
D | LDM | 1101 DDDD | – | AC=DDDD |
F0 | CLB | 1111 0000 | – | AC=0,C=0 |
F1 | CLC | 1111 0001 | – | C=0 |
F2 | IAC | 1111 0010 | – | AC=AC+1 |
F3 | CMC | 1111 0011 | – | C=~C |
F4 | CMA | 1111 0100 | – | AC=~AC |
F5 | RAL | 1111 0101 | – | {C,AC}向左循環(huán)平移一位 |
F6 | RAR | 1111 0110 | – | {C,AC}向右循環(huán)平移一位 |
F7 | TCC | 1111 0111 | – | AC=C, C=0 |
F8 | DAC | 1111 1000 | – | AC=AC-1 |
F9 | TCS | 1111 1001 | – | 當(dāng)C=0,AC=1001當(dāng)C=1,AC=1010 |
FA | STC | 1111 1010 | – | C=1 |
FB | DAA | 1111 1011 | – | 對AC執(zhí)行BCD修正 |
FC | KBP | 1111 1100 | – | 對AC進(jìn)行獨熱碼到二進(jìn)制轉(zhuǎn)換若輸入非法值,AC=1111 |
FD | DCL | 1111 1101 | – | 使用AC的低3位進(jìn)行轉(zhuǎn)換頁AC=000時選擇CM0其他情況以三位分別控制 |
I/O與RAM指令 | ||||
2 | SRC | 0010 RRR1 | – | 分別在指令周期的X2與X3處將R寄存器保存的頁內(nèi)地址送至ROM和RAM |
E0 | WRM | 1110 0000 | – | 將AC寫入選中的RAM主字符( 4位 )中 |
E1 | WMP | 1110 0001 | – | 將AC寫入選中的RAM端口中( 注:MCS-4中,RAM/ROM亦用作IO端口 ) |
E2 | WRR | 1110 0010 | – | 將AC寫入選中的ROM端口中 |
E3 | WPM | 1110 0011 | – | 將AC寫入選中的可讀寫程序存儲器中( 搭配4008/4009/4289使用 ) |
E4 | WR0 | 1110 0100 | – | 將AC寫入選中的RAM的0號狀態(tài)字符中 |
E5 | WR1 | 1110 0101 | – | 將AC寫入選中的RAM的1號狀態(tài)字符中 |
E6 | WR2 | 1110 0110 | – | 將AC寫入選中的RAM的2號狀態(tài)字符中 |
E7 | WR3 | 1110 0111 | – | 將AC寫入選中的RAM的3號狀態(tài)字符中 |
E8 | SBM | 1110 1000 | – | {C,AC}=AC-C-選中的RAM主字符 |
E9 | RDM | 1110 1001 | – | 將選中的RAM主字符寫入AC |
EA | RDR | 1110 1010 | – | 將選中的ROM輸入端口數(shù)據(jù)寫入AC |
EB | ADM | 1110 1011 | – | {C,AC}=AC+C+選中的RAM主字符 |
EC | RD0 | 1110 1100 | – | 將選中的RAM的0號狀態(tài)字符寫入AC |
ED | RD1 | 1110 1101 | – | 將選中的RAM的1號狀態(tài)字符寫入AC |
EE | RD2 | 1110 1110 | – | 將選中的RAM的2號狀態(tài)字符寫入AC |
EF | RD3 | 1110 1111 | – | 將選中的RAM的3號狀態(tài)字符寫入AC |
以上就是Intel公司首款商用處理器,Intel原本只是造存儲器的一家小公司,因為日本Busicom公司(造計算器)的小看,從此Intel慢慢轉(zhuǎn)型進(jìn)入微處理器的市場,一發(fā)不可收拾成。4004是Intel歷史性的標(biāo)志。
MCS-4就是4004處理器+4001ROM+4002RAM+4003SR的組合,微型計算機就是多塊芯片的集合,中央處理器用來負(fù)責(zé)控制和管理,下一講我們將講解MCS-4微型計算機,看看這一牛逼的微型計算機。
總結(jié)
News Watch
總結(jié)一下,Intel 4004有什么先進(jìn)性值得學(xué)習(xí)?
1、英特爾4004成為市場上第一個通用可編程處理器—工程師可以購買并使用軟件進(jìn)行定制以在各種電子設(shè)備中執(zhí)行不同功能的“基石”; 2、體積小巧,盡管在1971年,這款革命性的微處理器只有一個指甲大小,具有與1946年制造的第一臺電子計算機相同的計算能力,該電子計算機占據(jù)了整個房間。
3、與當(dāng)今產(chǎn)品通常使用的12英寸晶圓相比,第一個Intel4004微處理器是在2英寸晶圓上生產(chǎn)的。英特爾4004微處理器的獨特之處在于,它是有史以來投入商業(yè)生產(chǎn)的最小的微處理器設(shè)計之一。
4、1971年,英特爾4004處理器裝有2,300個晶體管。到2010年,具有32納米處理管芯和第二代高k金屬柵極硅技術(shù)的英特爾酷睿處理器可容納5.6億個晶體管。
5、英特爾4004微處理器電路的線寬為10微米或10,000納米。如今,英特爾微處理器的電路功能范圍在45至10納米之間。相比之下,人的平均頭發(fā)寬度為100,000納米。
位數(shù)/頻率:4bit/6萬次
頻率/前端總線:108KHZ/0.74MHz (4bit)
封裝/針腳數(shù)量:陶瓷DIP,塑封DIP / 16針
核心技術(shù)/晶體管數(shù)量:10微米 / 225
參考鏈接:https://www.4004.com/busicom-replica.html
http://www.intel4004.com/
http://e4004.szyc.org/
https://en.wikichip.org/wiki/intel/mcs-4
編輯:jq
-
處理器
+關(guān)注
關(guān)注
68文章
19178瀏覽量
229200 -
英特爾
+關(guān)注
關(guān)注
60文章
9900瀏覽量
171550 -
存儲器
+關(guān)注
關(guān)注
38文章
7455瀏覽量
163623
原文標(biāo)題:Intel的第一款CPU長啥樣?Intel 4-Bit的CPU簡介
文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論