我正在设计一个VHDL中的微控制器。我理解每个组件(ALU/Memory ...)的作用,以及如何实现它们的一些想法。我基本上想要实现冯诺依曼体系结构。VHDL中的微控制器的总线协议
但这里是我没有得到:组件如何沟通?我不知道如何设计我的巴士(巴士?)。因此,我正在寻找一个简单的总线实现和协议。
我的悬而未决的问题:
- 它是简单的有一个公共汽车一切或分离不同类型的数据?
- 每个组件如何知道何时“听”以及何时“写”?
重点是设计的简单性(以及因此的实施)。我不在乎速度。我想从头开始做所有事情(即没有预先制作的软核)。
我不知道在这个阶段这是否重要,但它不需要运行“真正的”编译代码,它与任何现有的任何兼容。另外,我在哪一点上开始考虑我的'集会'指示?我认为我会直接将它们加载到内存中。
谢谢你的帮助。
编辑: 我结束了从Picoblaze绘制(很多)灵感,因为它是:
- 简单易懂
- 一个BSD许可证下
具体,我开始在其中添加一些说明。
+1你钉住了我的担忧:)我不完全理解你的答案,但认为,但这是一个确定的进展。我在第一个示意图上看到两条总线,我该怎么弄错?另外,谁控制数据路径(CPU?)的顺序执行?你如何确保正确的开始(重置?)?另外,你有什么建议先开始实施? – nha
编辑答案解决这些问题(@nha),并希望让事情更清晰 – rick
它更清晰:)我可能会发布后续问题的实际实施。 – nha