0%

为什么不能在两个 always 块中赋值同一个变量?

verilog 本身不允许两个 always 块赋值同一个变量,如果你这么写了,它会将两个块用自己的方式组合起来,这会造成不可预知的错误,所以尽量避免这种写法。

always 块的作用?

always语句块从仿真0时刻开始执行其中的行为语句;最后一条执行完成后,再开始执行其中的第一条语句,如此往复循环,直到整个仿真结束。所以它叫 always 嘛

always@(*)和always不加@的区别
阅读全文 »

  • ./ file 与 source file 的区别
  • c 语言 判断语句后面直接加上char,pointer,int,float,什么时候是 true 什么时候是 flase

自己去试试看啦!

  • c 语言malloc中前半部分是什么意思

强制转换 void pointer to the pointer user want, like (int *) means force change void * to int *

  • c 语言 为什么 a[1] 可以修改 *a 不行
  • primitive table 优先顺序?如何判断?
阅读全文 »

因为在给出的范例代码中有调用同一个文件夹里上一个 module 的操作,于是四处寻找了一下调用的语法规范。

范例代码中的模块变量与所调用的模块的端口顺序摆放一致

1
2
3
4
5
6
7
8
9
10
11
12
13
14
module sevenseg(
input [3:0] sw,
output a,
output b,
output c,
output d,
output e,
output f,
output g
);

内容省略

endmodule

那么在调用的时候是这样的

1
sevenseg A1 (sum[3:0],a,b,c,d,e,f,g);
阅读全文 »

因为要写 verilog 所以让我们升级一下 vim 来更好的打代码……说来惭愧这么多年我真的使用 vim 都是很浅薄的水准,我谢罪。

有用包管理器的方法,不过我们先原始一下……如果你要安装一个名为 foo 的插件

1
2
3
mkdir -p ~/.vim/pack/foo
cd ~/.vim/pack/foo
unzip /tmp/foopack.zip

其中 mkdir -p 表示创建 parent 目录如果需要的话,若是存在也不报错

然后 vim 将会在 run 的开始检测 pack/*/start 中的 plugin,然后将它们加入 runtimepath 中,现在的目录看起来会是这样

阅读全文 »

我不知道是 ubuntu 要额外安装 lib 的操作,还是 linux 共性如此……总之,如果没有安装 cable driver 的话,那么插入 FPGA dev broad 是无法被识别的。我手上的是 NEXYS A7,所以使用的是 vivado。

总之先去安装目录里面(默认是/tools/Xilinx),找到 install_drivers

find -name install_drivers

当然名字可能有些许不同,不过大概率在 cable_drivers 下面,总之是不是的……嗯你感觉是打开看看,大概就清楚了(大概吧

记得做好备份,万一弄错了呢?

阅读全文 »

啊!是时候观鸟鸟鸟鸟……那么哪里可以看看呢?

旁边的 sand valley 还是去一下,毕竟最近的嘛,虽然似乎没有很罕见的鸟鸟,但是骨顶鸡也可爱爱!

https://www.birdspot.co.uk/days-out/10-uk-bird-watching-spots

这个推荐的不错,喂红隼的 Gigrin farm 可以圣诞假去!顺便去威尔士旅行一下啦啦啦~ 苏格兰高地有松鸡,但是要确认一下出现地点才行

五月岛记得预约!七月要上岛大概得五月就抢(真符合名字)看海鹦筑巢啊,大嘴萌萌鸟~附近似乎有塘鹅,但是那个岛似乎很难去到来着……我觉得我可以连续约个三天的上岛,不不不太过分还是两天就好了。

阅读全文 »

找到 settings64.sh,默认安装地址是 /tools/Xilinx/Vivado/2019.1/settings64.sh, 然后执行命令

1
2
3
source /tools/Xilinx/Vivado/2019.1/settings64.sh

vivado

然后就能启动了

未解之谜:

  • ./ 执行与 . 执行的区别 (source = .)
  • 在特定文件夹下才起作用的命令?(hexo?npm?)
阅读全文 »

ES2E3:Digital Systems Design

xc7a100tcsg324-1 型号!

周一下午一点,实验课 face to face,带上开发板

每周完成 Practice Problems ,周三之前 hand on QA,周五解答

阅读全文 »

注意一下pr之后不要手动 rebuild !会卡在上一个版本,等travis自己检测到了再说!它会自己rebuild的!

选择 scheme

短文章

命名管道使用?