(2)CPU能够实现的主要功能? 运算:算术运算、逻辑运算、字符串等; 程序控制:JMP/Jcc、SKIP、CALL/RET、L0OP等; 数据传送:REG、MEM、I/0、堆栈等部件间传送; 系统控制:STI/CTI、INTn、系统管理等。 (3)CPU如何实现控制指令执行顺序的功能? 控制器根据指令结果改变指令指针REG值; 下条执行指令总为指令指针REG值对应处指令。 (4)存放指令的操作数的部件有哪些? (5)指令中如何区分这些部件? 通过操作码、寻址方式中的一种。 转上页 返回18页
11 (2)CPU能够实现的主要功能? 运算:算术运算、逻辑运算、字符串等; 程序控制:JMP/Jcc、SKIP、CALL/RET、LOOP等; 数据传送:REG、MEM、I/O、堆栈等部件间传送; 系统控制:STI/CTI、INTn、系统管理等。 (3)CPU如何实现控制指令执行顺序的功能? 控制器根据指令结果改变指令指针REG值; 下条执行指令总为指令指针REG值对应处指令。 转上页 返回18页 (4)存放指令的操作数的部件有哪些? (5)指令中如何区分这些部件? 通过操作码、寻址方式中的一种
(6)指令中如何表示这些部件的地址空间? 统一编址或独立编址。 (7)CPU如何执行软件指令? 将软件指令变成硬件指令(信号组合)并执行 (8)CPU如何实现软件指令到硬件实现的转换? 指令译码—指令译码器实现软件信息(操作码、 地址码、寻址方式)到硬件信号的转换; 信号控制一控制器实现各硬件信号的协调控制。 (9)CPU哪些指令需要使用总线?如何在总线上表示? 与MEM、I/O设备交互的指令; 三种类型总线(A、D、C)信号及其时序。 12 转10页
12 (6)指令中如何表示这些部件的地址空间? 统一编址或独立编址。 (7)CPU如何执行软件指令? 将软件指令变成硬件指令(信号组合)并执行。 (8)CPU如何实现软件指令到硬件实现的转换? 指令译码—指令译码器实现软件信息(操作码、 地址码、寻址方式)到硬件信号的转换; 信号控制—控制器实现各硬件信号的协调控制。 (9)CPU哪些指令需要使用总线?如何在总线上表示? 与MEM、I/O设备交互的指令; 三种类型总线(A、D、C)信号及其时序。 转10页
3、CPU与外部通信一通过总线实现 主动方式一CPU数据传送指令(针对MM和I/0设备); 被动方式/0设备产生中断、CPU响应中断。 (1)指令如何能够区分MEM和I/0设备? I/0设备 X-1 X-1 MEM MEM I/0设备 0 MOV指令 IN/OUT指令 MOV指令 为保持可扩展性,部件一般采用独立编址方式。 思考:需要什么样的结构区分存储器和I/0接口? 转9页 13
13 3、CPU与外部通信—通过总线实现 主动方式--CPU数据传送指令(针对MEM和I/O设备); 被动方式--I/O设备产生中断、CPU响应中断。 (1)指令如何能够区分MEM和I/O设备? MEM I/O设备 N X X-1 0 MOV指令 MEM I/O设备 X-1 0 MOV指令 IN/OUT指令 N-X 0 为保持可扩展性,部件一般采用独立编址方式。 思考:需要什么样的结构区分存储器和I/O接口? 转9页
(2)指令中地址如何能够区分不同I/0设备? 约定不同I/0设备(接口)具有不同的地址。 (3)指令如何能够对同一1/0设备实现不同功能? 不同指令(IN/OU)实现一部分功能(方向); 给同一I/0设备分配多个地址实现一部分功能; 约定同一地址的数据中的部分位实现一部分功能。 (4)CPU如何被动控制某I/0设备? I/0接口电路产生并保持中断请求 CPU等待当前指令执行完成; CPU取得并区分是何I/0设备的何种控制请求; CPU调用具体的中断服务程序进行处理。 转9页
14 (2)指令中地址如何能够区分不同I/O设备? 约定不同I/O设备(接口)具有不同的地址。 (3)指令如何能够对同一I/O设备实现不同功能? 不同指令(IN/OUT)实现一部分功能(方向); 给同一I/O设备分配多个地址实现一部分功能; 约定同一地址的数据中的部分位实现一部分功能。 (4)CPU如何被动控制某I/O设备? I/O接口电路产生并保持中断请求; CPU等待当前指令执行完成; CPU取得并区分是何I/O设备的何种控制请求; CPU调用具体的中断服务程序进行处理。 转9页
4、I/0接口与总线的通信 I/0接口有接收CPU控制和控制外设两种功能。 (1)I/0接口如何知道自己被选中? 每个I/0接口均有片选引脚CS#,有效时被选中 被选中时才可执行总线上的命令(参与总线通信)。 (2)如何保证对某命令只有一个I/0接口被选中? 通过实现各接口的地址不重叠的约定来保证。 (3)I/0接口与外设通信时,它与CPU关系? I/0接口根据CPU的设定独立地与外设通信,与此 时的接口CS#状态无关; CPU更新设定(发送命令到总线)时,命令使某接 口CS#有效,接口接收各种控制(设定)。 15
15 4、I/O接口与总线的通信 I/O接口有接收CPU控制和控制外设两种功能。 (1)I/O接口如何知道自己被选中? 每个I/O接口均有片选引脚CS#,有效时被选中, 被选中时才可执行总线上的命令(参与总线通信)。 (2)如何保证对某命令只有一个I/O接口被选中? 通过实现各接口的地址不重叠的约定来保证。 (3)I/O接口与外设通信时,它与CPU关系? I/O接口根据CPU的设定独立地与外设通信,与此 时的接口CS#状态无关; CPU更新设定(发送命令到总线)时,命令使某接 口CS#有效,接口接收各种控制(设定)