问题标签 [nand2tetris]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hdl - chip Mux4way16 not run ontil the end on HardwareSimulator (VHDL)
I'm tryng to build this chip:
And that what i wrote ontil now -
And for some reason it's not working.. Screenshot from the HardwareSimulator
someone know why?
hdl - 从一开始就设计 HDL 部件的逻辑:DM
我正在学习 nand2tetris coursera 课程。我试图了解你们如何设计寻找 HDL 核心部件的潜在心理过程。例如,让我们以 DMUX4way 为例。实现零件的完整心理过程是什么?一旦我看到结果,我就明白背后的逻辑,但我自己很难找到谢谢
hdl - 我正在尝试创建一个 8 位移位寄存器,但不太确定哪里出错了
out[8]
当我测试我的代码时,似乎永远不会改变。但是,d1-d8 确实会根据需要进行更改。
cpu-architecture - 如何在真正的 FPGA 上实现 nand2tetris 处理器?
我学习了 nand2tetris 课程 ( https://www.nand2tetris.org/course ),主要目的是学习如何在真正的 FPGA 上构建软处理器。
虽然课程很简单,但现在我开始使用 FPGA 实现,我感到有点失落。
我买了一个 Intel de10 nano FPGA ( http://de10-nano.terasic.com/ ),并且从 Uni 那里获得了一些 Verilog 知识,我能够下载“Quartus Prime Lite”并使用简单的东西(如 LED 闪烁)进行引导, ETC...
但是,在实现处理器时,我不清楚有几件事:
- 如何实现数据存储器?我看到有一个 DDR3 模块连接到 FPGA 的 HPS。这是我需要直接使用的东西吗?我可以简单地在 HDL 中使用一个大的 16 位寄存器向量吗?
- 如何从读取程序的位置实现 ROM?以及如何存储我组装的二进制文件,然后引导 fetch-decode-execute 循环?
- 如何实现屏幕和键盘?确实,板上还有一个 HDMI 控制器:我必须自己实现所有逻辑吗?
这些是我目前正在努力解决的主要问题。您能否指出对完全新手有用的任何资源?
谢谢,
assembly - 如何进行位旋转?
我想在 HACK 程序集(nand2tetris)中进行位旋转。例如:
11110000 变为:11100001
我将如何做到这一点?我看到普通程序集具有执行此操作的 rol 语法,但我找不到用于 HACK 程序集的语法
hdl - 尝试为 nand2tetris 构建 PC(计数器),但我在逻辑上遇到了一些问题
该项目旨在建立一个程序计数器。
说明如下:
我想出了所有的可能性如下 所有可能的输出 然后我开始:
我尝试了很多次,但是当时钟加载到时间 1+ 或类似的东西时都失败了。
由于这里定义的寄存器是 out(t+1) = out(t)
时间的输出是什么?+。我发现它真的很烦人。
任何建议将不胜感激。
assembly - 汇编破解二进制机器语言
如何将 Assembly Hack 转换为二进制机器语言?
例如,下面的 hack 程序集,我将如何手动将其转换为机器代码(二进制)。我只需要知道一个参考资料或者我可以在哪里学习如何手动翻译它。
计算 R0 = 2 + 3
nand2tetris - 破解程序集:添加 R3、R1、R9,给出错误“预期表达式”
我能够使用带有汇编器的真实寄存器进行简单的算术运算,但我在本书中看到了一个代码示例
当我在汇编程序中将这一行作为 *.asm 文件单独尝试时,出现“预期表达式”错误。我直接从书中拉出这条线,所以我很惊讶有一个问题。
有什么想法吗?
谢谢。
nand2tetris - Nand to Tetris 如何将“pop this 2”编译成asm
我知道如何从堆栈中弹出一个值以将其放入 D
我知道如何选择内存位置“this 2”
问题是我在两个步骤中都使用 D 所以显然只是使用
M=D
不会有想要的结果。我想我以后需要第二个寄存器来保存一些值,或者我在这里遗漏了什么?
architecture - `在 HDL 文件 home/barnacles/nand2tetris/projects/01/And.hdl,第 18 行,',',或 ')' 是预期的`
我不断收到错误:
In HDL file home/barnacles/nand2tetris/projects/01/And.hdl,Line 18, ',', or ')' are expected
我继续检查语法,它是正确的,我不知道什么是错的。
我知道更改正在保存。我也试过重新安装