4月,举办了Rosnanov奥林匹克运动会研讨会,供奥林匹克运动会类型的学童使用 。 在他之后,一群组织者聚集在大厅,困惑了很长时间,如何使这个主题同时变得更加有趣和有用。 以NTI奥运会的格式输入Verilog和FPGA。 对于学生任务,例如多处理器系统中的缓存一致性协议,人们决定放弃数学上有趣但又有些抽象的东西。 另外,带有传感器的自动温室的想法不是很热情,因为它在arduino和STM32上实现了一百次,而FPGA并没有给温室增加任何有趣的东西。
突然-尤里卡! 而且,如果我们不进行编程就在纯电路图形游戏比赛中进行比赛,就像我们的祖先在勃列日涅夫和卡特时代那样玩过Pin-Pong这样的游戏。 而不是在古老的K561芯片上进行操作,而是在现代Xilinx和Altera(即Intel FPGA)上进行操作,并在设计人员在Apple,Intel和SpaceX中使用的寄存器传输级别上使用相同的设计技术。
简而言之,我们将于
7月8日至26日在Zelenograd的一所暑期学校中处理这个问题。 学校的一部分,其计划将在本文中讨论,其重点是数字电路的基础知识,处理器的体系结构和微体系结构的第一步以及(甚至大部分)硬件计算机图形学。
如果她的学生女儿伊丽莎白准时收到护照和俄罗斯签证,我将尝试将其带到Zelenograd作为助理。 伊丽莎白是俄罗斯,乌克兰,日本人,只会说英语。 在Zelenograd这里,学习俄语基础知识。 同时,他将教给准备在学校提供帮助的讲师正确的英语发音(MIET可选,MIPT,MSU和MEPhI可能提供):

今天,我为学校树立了榜样-tanchiki游戏。 我从
Steven Hugg于2018年12月15日撰写的《在Verilog中设计视频游戏硬件》一书中的
示例中获取了大部分代码。 Stephen Hugg在一些漂亮但非工业的模拟器上演示了代码。 我认为,在这样的模拟器上学习就像在防毒面具中闻花香一样,因此我合成了代码,并将所得配置倒入了真正的铁板中,这是一种
廉价的中国ZEOWAA板 。 为此,我不得不重写VGA扫描生成,使代码更加合成,并消除时钟信号使用中的一些方法问题。
我将结果发布在GitHub上 。
这是Steven Hugg模拟器中的样子:

在将板的包装器,扫描生成器和Stephen代码机械地组合在一起,并修复了所有无法在Intel FPGA Quartus Lite Edition中工作的小东西之后,下面是我的初次近似:合成和填充:
但是这个阵营不仅将涉及具有VGA扫描生成,ROM,子画面等的游戏。 我们还将通过处理器来解决这个问题。 将游戏在硬件有限状态机上的实现与硬件-软件实现进行比较。 为此,我们使用schoolMIPS教育处理器内核,该处理器内核
由Stanislav Zhelnio在Habr上的
帖子以及
在GitHub上的
schoolMIPS Wiki中描述 。
您甚至可以使用schoolMIPS培训核心来演示如何在处理器中设计书签。 我们不会争辩您的办公桌,手机或汽车中的计算机处理器中是否存在书签。 我们将展示如何设计它们。 书签示例:硬件状态机在程序执行期间监视体系结构寄存器的内容,并且当其中显示“西班牙之上的无云天空”时,将处理器切换到特权模式。 文本可能来自用户程序,例如电子邮件客户端。
是否可以使用软件防病毒软件检测到这样的书签? 不行 该软件只有在发生这种情况时才能看到。 是否可以通过在电子显微镜下检查微电路来检测? 不,即使在arduino中,工业处理器中也有数十亿个晶体管-数十万个。 即使手头有处理器的来源,您也可以在面纱上成千上万的行中隐藏很多东西,尤其是如果处理器的不同部分完成了精心设计的计划的一部分。
当一个团队创建书签而另一个团队找到书签时,您甚至可以组织竞赛。

任何已完成RUSNANO理论在线课程的三个模块并以职业为导向的现代微电路设计方法概述的学生(所有这些都是免费的,甚至获得了奖励),都可以参加Zelenograd的暑期学校:
- 从晶体管到微电路
- 数字电路的逻辑方面
- 数字电路的物理方面
初步课程计划-欢迎对此进行讨论:
第1周。数字逻辑基础。
第一天。集成度很小的微电路,结合组合逻辑进行练习。
第2天。集成度较小的微电路,采用顺序逻辑进行练习。
第3天。FPGA,包括按钮,开关,LED,七段指示器的练习。
第4天。FPGA,将几何形状输出到VGA。
第5天。FPGA,是玩坦克,比赛或愤怒的小鸟的状态机。
第2周。处理器
第一天。用汇编语言编程。
第2天。一站式schoolMIPS处理器。
第3天。将处理器与VGA上的几何形状结合在一起。
第4天。讲授有关中断和多任务的知识。 单个项目-在处理器上编程并输出到VGA的视频游戏。
第5天。关于传送带的讲座。 单个项目的竞争。
第3周。可编程收音机。 块程序包括三个主要部分:
-电动力学和无线电波传播的基础知识(理论部分);
-收发器路径的工作原理(理论和实践);
-数字信号处理的基础知识-滤波,频谱分析(理论和实践)。
第一天。电动力学和无线电波传播的理论基础。 传输路径的结构图,组件的功能。 信号(谐波,矩形)。 使用NI Elvis进行信号练习。
第2天。将信号传输到高频。 使用Matlab进行频率传输的数学依据。 使用NI Datex进行频率传输的实践练习。
第3天。信号的放大和发射。 练习使用NI Datex。 天线方向性的演示。
第4天。过滤信号。 练习使用NI Datex。 Matlab中的数字信号滤波
第5天。将信号传输到低频。 练习使用NI Datex。 总结所涵盖的材料,进行总结。
顺便说一句,斯蒂芬·哈格(Stephen Hugg)的许多资料(我从中查看有关子画面等的信息)都来自古老的德州仪器(TI)TMS9918视频处理器,该处理器位于日本雅马哈MSX计算机上,戈尔巴乔夫政府将其导入以对苏联学校进行计算机化处理。 当我自己还是一个小学生的时候,甚至可以通过在Zilog Z80主处理器上运行的汇编程序来管理该视频处理器,并进行总体设计。 由于电子设计自动化技术(EDA)的突破,这对于现代学生来说已经成为可能,甚至对于教授现代芯片的设计也很有用(Stephen Hagg的书-2018年)。
但是对于现在头发灰白的苏联学童来说,您还记得雅马哈的这场比赛吗?
关于电子设计自动化。 除了学童营地,伊丽莎白和我在这里还帮助举办了一次针对成年人的类似主题的研讨会,
但不是在Zelenograd,而是在拉斯维加斯的DAC设计自动化会议(DAC)上。图形,并带有用于AI的协处理器。 对于将要在泽列诺格勒上学然后在MIET,MEPhI,MIPT,HSE MIEM,莫斯科国立大学,ITMO,LETI,SSAU,NSTU和其他教授RTL-微电路设计路线元素的大学学习的学生来说,这样的研讨会是自然而然的下一步。到GDSII,用于FPGA / FPGA的计算机体系结构和综合实验室。
