第6章宏模块和LPM函数的应用.pptVIP

  • 5
  • 0
  • 约1.72万字
  • 约 120页
  • 2017-06-05 发布于四川
  • 举报
为MEM建立初始化文件 Step2 为初始化文件(.mif)指定基值 为MEM建立初始化文件(续) 存储器初始化文件(.mif) Step3 将测试程序的 16 进制代码写入 对Computer 进行编译 ? 模拟 (CPU + MEM) ? Computer 指定为项目 编译 ? 模拟 分析波形 测试程序举例 ?C ASM Contents of Memory (RAM) Address Contents LOAD D0 00 02D0 MPY D1 01 08D1 STORE E0 02 01E0 LOAD D2 03 02D2 MPY D3 04 08D3 STORE E1 05 01E1 LOAD D4 06 02D4 MPY D5 07 08D5 LOAD E2 08 01E2 HALT 0B 0700 ….. ….. D0 0006 ? ? D1 0005 ? ? D2 FFFC ? ? D3 0005 ? ? D4 FFFA D5 FFFB 测试程序举例 ?C ASM Contents of Memory (RAM) Address Contents ?sum=0; LOAD A0 00 02A0 STORE A4 01 01A4 ? temp=100; LOAD A2 02 02A2 STORE A3 03 01A3 ? loop :sum=sum+temp; LOOP:LOAD A4 04 (LOOP=04) 02A4 ADD A3 05 03A3 STORE A4 06 01A4 ? ? temp=temp-1; LOAD A3 07 02A3 SUB A1 08 04A1 STORE A3 09 01A3 if temp=0 goto loop; JMPGEZ LOOP 0A 0504 end HALT 0B 0700 ? ? ….. ….. ? ? A0 0000 ? ? A1 0001 ? ? A2 0064 相对于其他设计方法的比较 共同点: 根据任务书(指令集)确定基本构思 CPU结构图 把指令执行过程细分到节拍(状态) 优点: 数据通路不必十分精细,不必在上面标明每一个控制信号; 控制器设计简单: 不必写出(包括化简)每一个控制信号的布尔表达式; 不必操心控制器发出的控制信号怎样与数据通路精确相连; 可省去制造印制电路板、焊接等工序; 调试/排错容易; 完成设计后是一个可用的集成电路芯片; 易学、易懂,有利于学生对Computer建立起总体概念。 小结 本章主要介绍了宏模块和LPM函数的使用。 首先介绍了RAM、ROM和FIFO等存储器模块的使用方法; 然后介绍了锁相环、乘法器和NCO数控振荡器IP核的使用方法; 最后通过正弦信号发生器和乘累加器的设计实例,来具体说明使用宏模块和LPM函数的设计过程。 * * * * * * * * * * * * * * * * * * * * * CPU的指令集 ADD MBR←memory IRopcode←MBR MAR←MBR7-0 PC←PC+1 MBR←memory BR←MBR ACC←ACC+BR MAR←PC CPU的指令集 SUB MBR←memory IRopcode←MBR MAR←MBR7-0 PC←PC+1 MBR←memory BR←MBR ACC←ACC-BR MAR←PC CPU的指令集 MBR←memory IRopcode←MBR MAR←MBR7-0 PC←PC+1 MBR←memory BR←MBR ACC←ACC and BR AND CPU的指令集 OR MBR←memory IRopcode←MBR MAR←MBR7-0 PC←PC+1 MBR←memory BR←MBR ACC←ACC or BR MAR←PC CPU的指令集 NOT MBR←memory IRopcode←MBR ACC←not ACC PC←PC+1 MAR←PC CPU的指令集 MBR←memory IRopcode←MBR MAR←MBR7-0 PC←PC+1 MBR←memory ? BR←MBR ACC←ACC*BR(L) MR←ACC*BR(H) ? MAR←PC MPY CPU的指令集 MBR←memory IRopcode←MBR ACC←shiftr ACC PC←PC+1 MAR←PC SHIFTR SHIFTL MBR←memory IRopcode←MBR ACC←shiftl ACC PC←PC+1 MAR←PC CPU的指令集 MBR←memory

文档评论(0)

1亿VIP精品文档

相关文档