Intel-4004微处理器(MCS-4微机)

从最开始进行分析,一步一步扩展与改进,直到今天的高速信息处理时代
最难的是,该处理器时间太早,很多资料和功能信息都很难查找

4004芯片:

4004历史

Intel-4004已经很难买到了,可以说是“老古董”。
Intel 4004微处理器最初是Intel专门为日本一家名为Busicom的公司设计制造,用于该公司的计算器产品。
Intel还曾开发出4001(动态内存DRAM)、4002(只读存储器ROM)、4003(Register),用4004芯片,配上4001(40字节的动态内存DRAM)、4002(256字节的只读存储器ROM)、4003(10位的移位寄存器芯片Register),再加上键盘和数码管,就构成了一台完整的微型计算机MCS-4。
4004是美国英特尔公司 (Intel) 第一款推出的微处理器,也是全球第一款商用微处理器。
4004处理器于1971年推出,尺寸为3mm×4mm,外层有16只针脚,内里有2,250个晶体管,它采用10微米制程。
4004的最高频率有740kHz,能执行4位运算,支持8位指令集及12位地址集。

4004基本信息

位数/频率:4bit/6万次
频率/前端总线:108KHZ/0.74MHz (4bit)
封装/针脚数量:陶瓷DIP,塑封DIP / 16针
核心技术/晶体管数量:10微米 / 2250
在这里插入图片描述

封装引脚
16脚DIP封装,有白色陶瓷+金色散热器 ( C4004 )、黑色陶瓷 ( D4004 )、黑色塑料 ( P4004 ) 等封装形式
在这里插入图片描述
Pin Description(管脚定义)

  • 1、DATA BUS I/O(数据总线输入输出)
    D0 - D3:双向总线,担任数据与地址IO
  • 2、CLOCK PHASE(时钟相位)
    双向时钟信号输入
  • 3、SYNC OUTPUT(同步输出)
    同步信号输出:在一个指令周期的开始,该信号被送至ROM和RAM芯片,以确保移位寄存器正常工作(这里的ROM与RAM为MCS-4系列制芯片)
  • 4、MEMORY CONTROL OUTPUT(RAM控制输出)
    CM-RAM0 - CM-RAM3输出:用于4002RAM芯片组的片选
  • 5、MEMORY CONTROL OUTPUT(ROM控制输出)
    CM-ROM输出:用于ROM芯片组的片选
  • 6、TEST(测试)
    测试输入:JCN指令
  • 7、RESET(重置)
    复位:该引脚保持高电平64个时钟周期(8个机器周期)时4004发生复位,在复位发生时,所有寄存器都被清0
  • 8、Vss、Vdd
    电源

内部结构在这里插入图片描述
寄存器组

名称 大小(bits)
Accumulator 4
Carry/Link 1
索引寄存器 Index Registers ( IR ) (4+4)*8
程序寄存器 Program Counter ( PC ) 12
堆栈指针 Stack Pointer ( Stack ) 12*3
临时寄存器 TEMP.REG 4
INSTRUCTION REGISTER 8

指令集
(带 * 号的是双字指令,需要两个指令周期(1指令周期 = 8时钟周期))

基础指令
HEX 助记符 指令字1 指令字2 功能
00 NOP 0000 0000
1 *JCN 0001 CCCC AAAA AAAA 当条件C成立,跳转到当前ROM页的A地址
2 *FIM 0010 RRR0 DDDD DDDD 取当前页D地址处的数据,送至IR的R号寄存器对内
3 FIN 0011 RRR0 取IR中第0寄存器对数据作为ROM页内地址,将数据送至IR寄存器的R号寄存器对内
3 JIN 0011 RRR1 将IR中R号寄存器对内数据作为间接跳转地址进行跳转
4 *JUN 0100 AAAA AAAA AAAA 无条件跳转至地址A
5 *JMS 0101 AAAA AAAA AAAA 无条件跳转至地址A,将原地址保存在堆栈SP中
6 INC 0110 RRRR RRRR寄存器+1
7 *ISZ 0111 RRRR AAAA AAAA RRRR寄存器+1,如果结果不为0,跳转至页内地址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}向左循环平移一位
F6 RAR 1111 0110 {C,AC}向右循环平移一位
F7 TCC 1111 0111 AC=C, C=0
F8 DAC 1111 1000 AC=AC-1
F9 TCS 1111 1001 当C=0,AC=1001当C=1,AC=1010
FA STC 1111 1010 C=1
FB DAA 1111 1011 对AC执行BCD修正
FC KBP 1111 1100 对AC进行独热码到二进制转换若输入非法值,AC=1111
FD DCL 1111 1101 使用AC的低3位进行转换页AC=000时选择CM0其他情况以三位分别控制
I/O与RAM指令
2 SRC 0010 RRR1 分别在指令周期的X2与X3处将R寄存器保存的页内地址送至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号状态字符中
E5 WR1 1110 0101 将AC写入选中的RAM的1号状态字符中
E6 WR2 1110 0110 将AC写入选中的RAM的2号状态字符中
E7 WR3 1110 0111 将AC写入选中的RAM的3号状态字符中
E8 SBM 1110 1000 {C,AC}=AC-C-选中的RAM主字符
E9 RDM 1110 1001 将选中的RAM主字符写入AC
EA RDR 1110 1010 将选中的ROM输入端口数据写入AC
EB ADM 1110 1011 {C,AC}=AC+C+选中的RAM主字符
EC RD0 1110 1100 将选中的RAM的0号状态字符写入AC
ED RD1 1110 1101 将选中的RAM的1号状态字符写入AC
EE RD2 1110 1110 将选中的RAM的2号状态字符写入AC
EF RD3 1110 1111 将选中的RAM的3号状态字符写入AC

以上就是Intel公司首款商用处理器,Intel原本只是造存储器的一家小公司,因为日本Busicom公司(造计算器)的小看,从此Intel慢慢转型进入微处理器的市场,一发不可收拾成。4004是Intel历史性的标志。
MCS-4就是4004处理器+4001ROM+4002RAM+4003SR的组合,微型计算机就是多块芯片的集合,中央处理器用来负责控制和管理。

MCS-4微型计算机

历史
该MCS-4 (微型计算机集-4 )或4000系列或Busicom芯片组是一个家庭的4位被开发的微处理器芯片组英特尔。整个芯片组由四个独立芯片组成,包括4004 CPU,后者成为第一个商用微处理器。MCS-4于1971年3月完工,于6月投入生产,并于1971年11月15日投放市场。
在Federico Faggin于1970年加入英特尔之前,4004的发展相当缓慢。Federico在英特尔开发了多项设计创新,使得微处理器可以安装在一个芯片中,包括使用硅栅技术的随机逻辑芯片设计的新方法,Faggin开发了4004测试工具,芯片和逻辑设计,同时整个MCS-4系统的所有芯片布局。
当时,英特尔仅以其内存芯片而闻名。

在这里插入图片描述

组件

MCS-4只需4001 ROM和4004 CPU即可实现最低功能,但其设计与RAM和移位寄存器完全兼容。此外,另外两个芯片4008和4009扩展了系统,可与英特尔现有的任何内存芯片选择配合使用。

部分 描述
4001 只读存储器
4002 内存
4003 移位寄存器
4004 MPU
4008 地址锁存器
4009 I/O接口

首席设计师

  • 特德霍夫
  • 费德里科法金
  • Stan Mazor
  • Masatoshi Shim

相关文件

  • MCS-4 数据表
    链接:https://pan.baidu.com/s/15zO7lQ7urFh9zOpKaOIYAw
    提取码:9a96

  • MCS-4 手册
    链接:https://pan.baidu.com/s/12Qww3WBZ-jMgBEAfWMvnvg
    提取码:utdl

框架
在这里插入图片描述

这就是MCS-4组成的核心部分,应该大致能理解该微型计算机的框架,接下来将分析其运作和功能

MCS-4的组成结构与功能分析

英特尔微处理器快速参考指南:https://www.intel.com/pressroom/kits/quickreffam.htm#i486

简介:

MCS-4是一套微型可编程计算机,适用于测试系统、外围设备、终端、计费机、测量系统、数字和过程控制等应用。

4004 CPU、4003 SR和4002 RAM是标准构建块。4001 ROM包含自定义微程序,使用符合客户规格的金属掩模实现。
MCS-4系统易于与开关、键盘、显示器、电传打字机、打印机、阅读器、A-D转换器和其他流行的外围设备进行接口。

使用MCS-4微型计算机集构建的系统最多可以有4K x 8位ROM字、1280 x 4位RAM和128根 I/O线,而不需要任何接口逻辑。通过添加一些简单的门,MCS-4可以在任何组合中拥有48个RAM和ROM包,以及192个 I/O行。最小系统配置由一个CPU和一个256 x 8位ROM组成。

MCS-4有一个非常强大的指令集,允许二进制和十进制算术。它包括条件分支、跳转到子例程,并通过间接获取提供了对ROM查找表的有效使用。

英特尔MCS-4微型计算机(4001/2/3/4)采用硅栅技术制造。这种低阈值技术允许设计和生产性能更高的MOS电路,并在单片芯片上提供比传统MOS技术更高的功能密度。
在这里插入图片描述
4001(ROM)

256x8位掩模可编程ROM和4位I/O端口

在这里插入图片描述
在这里插入图片描述
4001是一个2048位的金属掩模可编程ROM,为MCS-4微型计算机提供定制的微程序显示功能。

地址和数据通过时间复用在4条数据总线上传输。计时是使用两个时钟信号和4004提供的同步信号内部生成的。地址在同步之后的三个时间段从CPU接收,并在256个字中选择一个,在16个ROM中选择一个。为此,每个ROM被metal选项标识为#0、1、2到15。还提供了一个命令行(CM),它的作用域是选择一个ROM库(由16个ROM组成的组)。在寻址时间之后的两个时间段(m1&m2)内,信息从ROM传输到数据总线线路。

ROM的第二种操作模式是作为输入/输出控制设备。在这种模式下,ROM芯片将把信息路由到4 I/O外部线路的数据总线线路和数据总线线路之间。每个芯片都有能力识别自己的 I/O端口操作,识别 I/O端口指令,并决定它是输入还是输出操作和执行指令。在正常工作时,外部信号(CL)会自动清除输出寄存器。
当复位线低(负电压)时,所有内部触发器(包括输出寄存器)将被重新设置。
4002(RAM)

320位RAM和4位输出端口

在这里插入图片描述
在这里插入图片描述
4002执行两个函数。作为RAM,它将320位存储在4个寄存器中,每个寄存器包含24个4位字符(16个主存字符和4个状态字符)。作为与周边设备通信的载体,它具有4条输出线路和相应的控制逻辑来执行输出。

4003(SR)

10位串行进/并行串行出移位寄存器(SR)

在这里插入图片描述
在这里插入图片描述
4003是一个10位静态移位寄存器,具有串行输入、并行和串行输出数据,其功能是增加输出行数,与键盘、显示器、打印机、电传打字机、开关、读卡器、A-D转换器等 I/O设备进行接口。

数据是串行加载的,并在通过逻辑访问在10个输出行上并行可用。当启用(E = low)时,将读取移位寄存器内容;当未启用(E = high)时,平行线位于Vss。串行输出行不受使能逻辑的影响。

数据也可以串行地允许不确定数量的类似设备级联在一起,以提供移位寄存器长度乘以10的倍数。

数据传输由CP信号控制。内部电源接通清除电路将清除移位寄存器(Qi = Vss)之间的应用电源电压和第一个CP信号。

4004(CPU)

4004是一个中央处理器单元(CPU),设计用于与MCS-4(4001, 4002, 4003)的其他成员一起为微程序mable计算机应用程序工作。
CPU芯片由4位加法器、64位(16×4)索引寄存器、48位(4×12)程序计数器和堆栈(如果可能的话,嵌套最多3层)、地址增量器、8位指令寄存器和译码器以及控制逻辑。信息在4004和其他芯片之间通过4线数据总线流动。一个4004可以与多达48个ROM 4001和RAM(4002)芯片组合使用。

典型的机器周期从CPU向ROM和RAM发送同步计时信号(SYNC)开始。接下来,使用三个时钟周期将12位ROM地址发送到数据总线。然后将地址递增1并存储在程序计数器中。所选ROM在接下来的2个时钟周期内发送回8位指令或数据。该信息存储在两个寄存器中:OPR和OPA。接下来的三个时钟周期用于执行指令。

ROM存储空间由命令ROM控制信号(CM-ROM)控制,多达4个RAM存储空间由4个命令RAM控制信号(CM RAM0、CM RAM1、CM RAM2、CM RAM3)控制。完整的存储转换是由执行DCL指令完成的。

输入测试信号(TEST)与条件跳转(JCN)指令一起使用。外部复位信号用于清除所有寄存器和触发器。为了完全清除所有寄存器,复位信号必须应用于至少8个内存周期(8 x 8个时钟周期)。重置后,程序将从 “0” 步骤开始,并选择CM-RAM0。

执行指令周期

在这里插入图片描述
在这里插入图片描述
详细的功能规范描述了系统的操作、指令集、每条指令的CPU活动以及一些编程和硬件示例,这些详细的功能规范是单独发布的,可根据要求提供。

下面是系统运行的简要概述MCS-4使用10.8 usec指令周期。CPU(4004)生成同步信号(SYNC),指示指令周期的开始,并将其发送到ROM(4001)和RAM(4002)。

基本指令执行需要8或16个周期的750千赫时钟。在一个典型的序列中,CPU在前三个周期(A1, A2, A3)向ROM发送12位地址。所选ROM芯片在接下来的两个周期(M1. M2)中向CPU发送8位指令(OPR, OPA),然后在最后三个周期(X1. X2. X3)中对指令进行解释和执行。

CPU、RAM和ROM可以由外部复位线控制。当复位被激活时,寄存器和触发器的内容被清除。重置后,CPU将从地址0和CM-RAM0开始。

MCS-4可以有多达4K x 8位ROM字,1280 x 4位RAM和128 I/O行,不需要任何连接逻辑。通过添加一些简单的门,MCS-4可以有多达48个RAM和ROM的任何组合和192 I/O行。

4001、4002和4004由4线数据总线(D0、D1、D2、D3)连接,用于芯片之间的所有信息流,除了CPU在另外6条线路上发送的控制信号。MCS-4系统的互连如上图所示。显示了一个扩展配置。最小系统配置由一个CPU(4004)和一个ROM组成(4001)。指令周期图显示了每个时钟周期内数据总线上的活动,以及如何细分基本指令周期。

每个数据总线输出缓冲区都有三个可能的状态“1”、“0”和浮点数。在给定的时间内,只允许一个输出缓冲区驱动数据线,因此,所有其他缓冲区必须处于浮动状态。但是,每个数据行可以同时接收多个输入缓冲区MCS-4有一个非常强大的指令集,允许二进制和十进制算术。它包括条件分支。跳转到子例程,并提供了通过间接获取有效使用ROM查找表。通常,850 usec中可以添加两个8位数字。

这就是MCS-4微型计算机的基本结构。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章