目录 1
第1章 简易单片机的结构及其开发模拟测试 1
1-1 CPLD设置CPU的HDL描述硬件结构说明 2
1-1-1 CPLD设置CPU的HDL使用LPM模块简介 2
1-1-2 CPLD设置CPU的HDL使用寄存器简介 3
1-1-3 程序存储器的设置设计及取指——(Fetch) 4
1-1-4 程序存储器的取指(Fetch) 7
1-1-5 CPU内部寄存器及数据的运算控制示意图 7
1-1-6 CPU的HDL描述I/O设置及PROM设置控制 10
1-1-7 RISCPU3.TDF完整电路描述 11
1-2 RISCPU3.TDF电路测试及模拟 16
1-3 RISCPU3结构特性讨论 22
1-4 流水线处理结构的高速RISCPU4简介 24
1-4-1 RISCPU4流水线的指令取指Fetch/Dec解码 25
1-4-2 RISCPU4流水线的运算单元读取及解码(OP/RD)电路 27
1-4-3 RISCPU4流水线解码(OP/RD)控制信号输出电路 28
1-4-4 RISCPU4流水线执行EXE控制电路 30
1-4-5 RISCPU4流水线完整电路描述 31
1-4-6 RISCPU4流水线电路功能的模拟检测 41
1-4-7 数据相依冒险的自动检测处理 46
1-4-8 实例 46
1-4-9 结论 47
2-l 16位PD程序存储器44个精简指令RISC单片机指令结构简介 50
第2章 灵活性指令码的单片机结构及开发模拟测试 50
2-2 44个精简指令RISC单片机的I/O构建及其与CPU的连接简介 54
2-2-1 16位具输入比较和捕捉功能的计数计时器CTC 54
2-2-2 12位的脉冲宽调变PWM外围电路 56
2-2-3 PPIO外围电路及CNTPl6和PWMl2对应I/O寄存器寻址联结控制 57
2-2-4 中断的处理及连接 58
2-3 具有相当功能的单片机RISCPU8电路设计与描述 61
2-3-1 RISCPU8.TDF的ALU运算处理 62
2-3-2 RISCPU8.TDF的解码及控制Control信号运算处理 65
2-3-3 RISCPU8.TDF的程序转移及寄存器数据回写WB运算处理 66
2-4 RISCPU8.TDF的完整程序描述处理 69
2-5 RISCPU8.TDF的程序编写及模拟测试 80
2-6 RISCPU8.TDF的程序编写及实例测试 89
2-6-1 EPlK50TCl44—3主机板和SN—CPLDE3测试实验器介绍 89
2-6-2 RISCPU8的程序编写及实例测试 91
第3章 SOC及强化外围的单片机结构和开发模拟测试 95
3-1 SOC强化外围模块电路精简指令RISC单片机简介 95
3-2 硬件乘除法器及外加存储器的读写设置及连接和模拟测试 95
3-2-1 硬件乘除法器的设计设置及连接 95
3-2-2 外加存储器的读写控制设置及连接 98
3-2-3 乘除法器及外加存储器的读写模拟测试 100
3-2-4 精简指令RISCPUA的整体架构 104
3-2-5 讨论 105
3-3 键盘扫描及7段LED显示和LCD字形显示器接口电路 106
3-3-1 硬件键盘扫描接口电路的设计 107
3-3-2 4位7段LED扫描显示及硬件键盘扫描接口电路的连接 112
3-3-3 LCD显示模块的驱动接口电路及其连接 115
3-4 简易的VGA屏幕显示控制接口电路 125
3-4-1 简易的色条产生器(Color Bar Generator) 128
3-4-2 简易的字形显示器(Character Generator) 129
3-5 简易串行非同步UART接口电路 134
3-5-1 波特率产生器(Baudrate Generator) 135
3-5-2 UART的发送TX控制电路 138
3-5-3 UART的接收RX控制电路 141
3-5-4 UART的整合电路 146
3-6 I2C串行同步传输电路 157
3-7 SCI串行同步传输电路 170
3-8 模拟比较器 175
3-9 ADC转换电路 176
3-10 高速的ADC转换读取及寄存 181
3-10-1 ADC的转换及读取控制设置 181
3-10-2 ADC转换读取并予解码扫描显示于7段LED的控制 183
3-10-3 高速的ADC纪录储存后予以输出显示控制 185
3-11 电路的测试及实例 188
3-12 结论 193
4-1-1 JTAG的边界电路扫描(Boundary Scan) 194
第4章 JTAG及DMA和QEP.DB死区接口电路 194
4-1 JTAG接口电路简介 194
4-1-2 JTAG的电路结构 198
4-1-3 简易的JTAG的电路结构设置设计和模拟 200
4-2 直接存储器读写DMA(Direct Memory Access)接口电路 212
4-3 四象限编码器QEP检测及死区(Dead Band)控制接口电路 226
4-3-1 四象限编码器QEP(Quard Encoder Port)检测 226
4-3-2 死区(Dead Band)控制设置电路 230
4-3-3 四象限编码器QEP(Quard Encoder Port)检测计数接口电路 232
4-4 实验测试与实例 236
5-2 改良型8051单片机系列 239
5-1 通用型单片机 239
第5章 通用型单片机指令架构分析及特性简介 239
5-3 强化型RISC AVR单片机系列 241
5-4 全世界8位MCU居于第二位的PIC系列产品 248
5-4-1 含有模拟放大器OPA及DAC接口的特殊PIC单片机 252
5-4-2 含有CAN及ADC,PWM控制运算的MCU单片机 254
5-4-3 具有DSP的运算的DSP MCU单片机 256
5-5 TI单片机MSP430芯片系列 268
5-5-1 MSP430F14X的电路结构简介 269
5-5-2 MSP430F14X的指令模态结构简介 270
5-5-3 MSP430F14X特殊外围电路简介 277
5-6 DSP单片机龙头TI的TMS320C54X系列 279
5-6-1 TMS320C542的CPU结构 280
5-6-2 TMS320C542寻址模式及其对应数据转载指令格式分析和分类 282
5-6-3 TMS320C54X的流水线(Pipeline)指令运算 284
5-6-4 TMS320C54X的外围电路 285
5-6-5 一个良好的DSP开发软件 286
5-7 新加坡商Cypress的第一个含有USB外围单片机 287
5-7-1 USB接口简介 291
5-7-2 新加坡Cypress的PSoC单片机 291
5-8 专为机电控制的TMS320F24X DSP单片机简介 294
5-9 练习 299
6-1 SMCU的架构设计设置及模拟测试 300
第6章 多重周期CPU的架构设计开发及模拟测试 300
6-2 实际SMCU的40个指令以VHDL设计设置 302
6-3 实际SMCU的测试程序编辑及其对应模拟波形 314
6-4 SMCU6的综合讨论 322
6-5 加入一个16位乘或除16位运算的CPU 324
6-5-1 以MAXPLUS2的MegaWinzard Plug-In Manager建立乘除法器元 325
件库 325
6-5-2 引入乘除法器的电路描述 326
6-5-3 引入乘除法器的电路模拟及测试 330
6-6 讨论及实例 332
第7章 MIPS单一执行周期CPU架构设计设置及模拟测试 333
7-1 MIPS CPU的指令架构说明 333
7-2 简化的MIPS CPU架构设计描述 336
7-2-1 Fetch取指指令运算描述 337
7-2-2 Decode指令解码运算描述 339
7-2-3 Control控制信号的解码输出描述 341
7-2-4 Dmemory数据寄存器的读写控制描述 343
7-2-5 指令执行Exe的执行描述 344
7-2-6 完整的简化MIPS组构描述 349
7-3 测试程序的编写 356
7-4 在MAXPLUS2的波形编辑模拟环境下作指令执行检测 357
7-5 练习和实例 363
第8章 流水线MIPS设计及转移冒险的处理和测试 365
8-1 简介 365
8-2 MIPS流水线处理及设计描述 367
8-2-1 MIPS流水线的取指Fetch及程序计数器PC的运算 370
8-2-2 MIPS流水线的指令解码ID及寄存器内容的读写 374
8-2-3 MIPS流水线的指令控制信号Control输出电路设计描述 378
8-2-4 MIPS流水线的指令执行Execute电路设计描述 381
8-2-5 MIPS流水线的数据存储器的读写控制Dmemoryp电路设计描述 386
8-2-6 MIPS流水线的整合描述MIPS2T.VHD的电路设计描述 388
8-3 MIPS流水线CPU的功能模拟及检测 394
8-4 流水线对应于数据序执行所产生的数据冒险(Harzard) 402
8-5 流水线数据冒险(Harzard)自动处理的电路结构描述及检测 408
8-5-1 在第4层的数据存储器读出LW运算流水线数据冒险自动处理 416
8-5-2 如LW运算流水线数据冒险的STALL寄存运算模拟测试 421
8-6 练习与实例 424
第9章 32位存储器及寄存器的流水线MIPS结构 426
9-1 32位存储器及寄存器的流水线MIPS简介 426
9-1-1 取指的IFETC2TT4.VHD的修改 426
9-1-2 指令解码及寄存器的数据读写IDECODTT4.VHD的修改 427
9-1-3 数据存储器读写DMEMORYT4.VHD的修改 428
9-1-4 程序执行的EXECUTTT.VHD的修改 428
9-1-5 主构MIPS4TT.VHD电路的描述 430
9-1-6 程序执行模拟测试 437
9-2 32位流水线及冒险处理的MIPS4TT.VHD电路特性 443
9-3 LW运算流水线数据冒险做停STALL处理 444
9-4 练习与实例 446
第10章 高级MCU结构分析及ARM简介 448
10-1 TMS320C67X DSP单片机结构简介 448
10-1-1 TMS320C67X DSP单片机流水线运算结构简介 451
10-1-2 TMS320C6X系列DSP单片机指令运算码 455
10-2 当代极省电且为可变化指令架构的新一代CPU代表ARM简介 458
10-2-1 EARM 7TDMI的特性 458
10-2-2 ARM 7TDMI的电路架构 459
10-3 ARM 7TDMI的指令运算架构 462
10-4 ARM 7TDMI的指令架构 465
10-4-1 对应以2到3个运算寄存器作数据处理指令 466
10-4-2 对应以寄存器作数据读写及寻址索引指令 470
10-4-3 对应以寄存器进行半字符数据及带符号的数据读写及寻址索引指令 474
10-4-4 寄存器群进行字符区块对应Rn进行存储器间接寻址及索引内容数据读写 475
10-4-5 以Rn进行内存间接寻址读取数据写入Rd后再被Rm写入的SWP指令 478
10-4-6 ARM的乘法器及其乘加器指令 479
10-4-7 ARM差值转移(Branch),Rx间接转移和PC连接(Link)转移指令 480
10-4-8 间接寻址内存数据与寄存器内容数据互换SWP指令 483
10-4-9 ARM的软件中断SWI指令 483
lO-4-10 ARM的协同处理器(Coprocessor)及其对应指令 485
10-5 THUMB指令群 488
10-5-1 THUMB的ALU运算指令群 491
10-5-2 THUMB的立即数据运算指令群 493
10-5-3 THUMB的寄存器内容数据移位后的数据载存指令 493
10-5-5 以寄存器内容为内存寻址与寄存器内容作读写指令 495
10-5-4 内存数据与寄存器内容数据载存指令 495
10-5-6 以SP(R13)内容为内存寻址与寄存器内容进行读写指令 498
10-5-7 以SP(R13)或PC(R15)内容加上10位偏移值来设置寄存器指令 499
10-5-8 连续的对应多个寄存器和内存执行数据存取和PUSH/POP指令 500
10-5-9 有条件和无条件的程序转移(Branch) 501
10-5-10 软件设置程序中断SWI指令 503
10-6 涵盖ARM的系统芯片SOC简介 503
10-6-1 ATMEL的AT91M404XX系列嵌入式ARM芯片 504
10-6-2 TI的TMS320VC5472系列嵌入式ARM及DSP 54X系列SOC芯片 504
10-6-3 三星电子的KS320C5000系列嵌入式ARM系统SOC芯片 507
10-7 练习 509