老A 发表于 2013-11-7 15:19
有没有考虑ALU单元放在哪儿?还有ROM查表指令怎么处理?
我做过一个处理器,所有指令单时钟周期,唯一的例 ...
运算器接之简单,寄存器输出送多路器送ALU,ALU输出带高阻送数据总线, 指令译码出来的控制信号一锁马上就作用多路器或ALU或RAM或程序指针下条指令地址, 这里不打算把表放ROM了, 表放在RAM, ROMRAM分开哈佛结构吧, 这里定长指令,指令长度为看情况位,立即数也放指令里了, 堆栈指令也废掉, 我看看...暂时还没发现实现某常规程序的瓶颈, 外面有中断来的话进入中断程序,马上关中断然后保存断点地址,之后再看情况开中断....
实现某些复杂指令可以多条精简指令组合..这个交给编译器得了.
我现在这样想...
设计结构灵巧精简的硬件处理结构
适合常用指令的硬件结构
按照硬件的结构特性设计指令
设计指令的时候又反馈微调硬件结构
调硬件必须要保证延迟在范围内
绝对不会为了实现某条很少用,又比较复杂操作的指令而使硬件结构变得臃肿
通过精简指令组合实现复杂指令集的处理效果
这样程序执行就不会出现瓶颈
最终目的就是做出很简单,可以DIY得起的单周期CPU,用74HC门电路实现性能>10MHZ.....要是情况好的话最高估计应该可以勉强上到20MHZ吧, 简简单单实现吧, 小玩意[s:12]
看样子你应该是用FPGA,要是投片的话~一定要弄好点噢!!! .........~智斗土豪~