我是一名希望学习verilog的程序员。
令人惊讶的整洁将是一个教程,其中构建一个具有非常简洁的设计的微型微处理器,比如英特尔 4004,然后继续使用 fpga 实际制造它并让它闪烁 LED 以进行订购。
有这样的教程吗?
如果没有,我可能会尝试写一个。有没有人对我可以利用的资源提出任何建议?例如不错的开源verilog编译器、调试工具、模拟器、verilog教程、廉价的FPGA和编程工具、LED面包板等。
我是一名希望学习verilog的程序员。
令人惊讶的整洁将是一个教程,其中构建一个具有非常简洁的设计的微型微处理器,比如英特尔 4004,然后继续使用 fpga 实际制造它并让它闪烁 LED 以进行订购。
有这样的教程吗?
如果没有,我可能会尝试写一个。有没有人对我可以利用的资源提出任何建议?例如不错的开源verilog编译器、调试工具、模拟器、verilog教程、廉价的FPGA和编程工具、LED面包板等。
我在这里找到了一些关于基本微处理器的精彩幻灯片:
http://www.slideshare.net/n380/elementary-processor-tutorial
开源工具非常适合开发/测试,但无法合成您的 hdl 以产生比特流,您需要使用来自 altera 或 xilinx(或其他)的制造商工具之一。
制造商工具以套件的形式提供,很大(5GB 安装,需要 7 到 12 GB 的驱动器空间)可用于 windows 和 linux。altera.com xilinx.com
那里有很多软核。opencores.org 将是一个查看与 arduino 兼容的 zpuino 的好地方。
最好的想法是从简单开始并构建获得一个 fpga 板,实现一个简单的设计(led flasher)并从那里开始工作。相当的学习曲线,特别是如果你没有做过很多数字电子产品。
记住它的硬件和你的设计电路不是写代码,所以时间就是一切。
查看 fpga4fun.com 项目,并将其作为起点。
基于 xilinx 的 digilentinc 有一些低成本的电路板,gadget factory 也是如此。avnet 有一个基于 USB 加密狗的板,售价 80 美元。
基于altera。terasic 有一些不错的电路板。
小工具工厂目前有一个用于 paillio + 一些插件板的 kickstarter 项目http://www.kickstarter.com/projects/13588168/retrocade-synth-one-chiptune-board-to-rule-them-al
您可以使用 GNU Icarus Verilog 在没有实际板的情况下使用 Verilog。您可以从这里获得 Windows 版本。
Niklaus Wirth 还提供了一个关于如何设计和构建简单 CPU 的教程,其中包含用于 Xilinx 板的 Verilog 代码:
https://www.inf.ethz.ch/personal/wirth/FPGA-relatedWork/RISC.pdf https://www.inf.ethz.ch/personal/wirth/FPGA-relatedWork/ComputerSystemDesign.pdf
~ 是的,正是发明 Pascal 的 Wirth——他退休后正在玩 FPGA。
不确定是否有明确的 verilog 教程,但您可能会从 MIT 开放课件中发现这门课很有趣:
所有课堂笔记都在线,教学大纲听起来可能是您感兴趣的(强调我的):
6.004 介绍了数字系统工程。该课程从 MOS 晶体管开始,开发了一系列构建模块——逻辑门、组合电路和时序电路、有限状态机、计算机,最后是完整的系统。通过一系列设计实例探索了硬件和软件机制。
对于任何想要了解(并最终设计)数字系统的 EECS 本科生来说,6.004 都是必需的材料。掌握这些材料对于以后的数字设计、计算机体系结构和系统课程至关重要。在参加 6.004 之前,学生应该对使用计算机感到自在;假定具备编程语言概念 (6.001) 和电气基础知识 (6.002) 的基本知识。
习题集和实验练习旨在让学生“亲身体验”设计数字系统;每个学生在学期内完成精简指令集计算机 (RISC) 处理器的门级设计。实验室提供对工作站的访问以及课程工作人员的帮助,但可以使用 Athena 机器或个人家用计算机完成作业。
Altera 在这类东西上有很多资源。
你可以试试这个链接: http ://www.altera.com/education/univ/materials/digital_logic/labs/unv-labs.html
有一系列使用 Verilog/VHDL 制作嵌入式处理器的实验室教程。
所有的 FPGA 供应商都有价格低廉(200~250 美元)的开发套件。例如,Xilinx的SP601或 Altera 的Cyclone III Starter。我个人拥有 Xilinx 的SP605(约 500 美元)。您也许可以从其他选项(例如Sparkfun)中找到更便宜的选项。
严格来说,虽然您可以找到开源 VHDL/Verilog 工具,但我不知道有任何此类用于综合的工具(制作 FPGA 将使用的东西)。Xilinx和Altera都提供免费(如 beer)工具,但它们不是开放或免费的(如 libre)软件。Xilinx 工具包括一个模拟器(仅限免费版本),可以在 Windows 或 Linux 上运行。我假设 Altera 工具类似,但我不熟悉它们。
用 Verilog/VHDL 构建一个简单的微处理器是大学计算机体系结构课程中非常常见的功能。毫无疑问,您几乎可以从任何主要学校找到课堂笔记等。