当前位置: 首页 > news >正文

集宁有做蒙古黑石材网站的嘛东莞没有网站的公司

集宁有做蒙古黑石材网站的嘛,东莞没有网站的公司,网站死链检测,福建省两学一做网站导入NVBoard git仓库:https://github.com/NJU-ProjectN/nvboard 按照ysyx手册的要求,初始化NVBoard项目。 由于GitHub在国外,可能会超时无响应: 解决方案是修改代理。 当前的运行环境是VM VirtualBox虚拟机,网卡是…

导入NVBoard

git仓库:https://github.com/NJU-ProjectN/nvboard

按照ysyx手册的要求,初始化NVBoard项目。

由于GitHub在国外,可能会超时无响应:

解决方案是修改代理。

当前的运行环境是VM VirtualBox虚拟机,网卡是:网络地址转换NAT

主机有科学上网,可以让虚拟机连接主机的代理接口。

修改或新建~/.ssh/config

Host github.comHostName github.comUser gitProxyCommand nc -X connect -x 10.161.53.236:7897 %h %p       

修改上面的ip地址端口为主机实际地址即可。

现在可以成功下载:

安装官方仓库readme的要求,需要添加环境变量NVBOARD_HOME指向所在的文件目录。

亲测通过ysyx导入会自动配置。

如果没有配置,可以参照下图,在~/.bashrc后手动追加。

进入/ysyx-workbench/nvboard/example目录下运行make run,而不是直接在/ysyx-workbench下运行。

如果报错找不到/scripts/nvboard.mk

那可能是环境变量没有生效,需要source ~/.bashrc

运行结果:

创建verilator项目

  • https://veripool.org/guide/latest/example_binary.html#example-create-binary-execution

双控开关

样例给的一般是.v作为verilator格式后缀。

文件名必须与类名相同,否则会报错:

编译语句较长,编写Makefile文件简化操作。

本人也是初学,目前是能成功编译。

肯定会存在一些规范问题,之后边学边解决。

VSRC_DIR=./vsrc
BUILD_DIR=./build
VERILATOR_FLAGS = --binary -j 0 -Wall -I$(VSRC_DIR) --Mdir ${BUILD_DIR}all:@echo "Write this Makefile by your self."sim:$(call git_commit, "sim RTL") # DO NOT REMOVE THIS LINE!!!#@echo "Write this Makefile by your self."
Vtop:${VSRC_DIR}/top.vverilator ${VERILATOR_FLAGS}  ./top.v
include ../Makefile

修改top.v内容为双控开关代码:

  • 搭建verilator仿真环境 | 官方文档 (oscc.cc)

补充说一下,Ctrl b z可以全屏显示,当前分屏方案下的,活跃窗口

再按一次可以恢复分屏方案。

编译命令为:verilator -Wall --cc --exe --build main.cpp top.v

显示波形

  • Verilator Pt.2: Basics of SystemVerilog verification using C++ :: It’s Embedded! (itsembedded.com)

Makefile文件内容:

  1. 生成可执行文件
    1. --trace:允许记录波形,不开启此选项在记录波形时会报错
    2. --cc:语言是C++
    3. --exe --build:生成可执行文件
  2. 执行可执行文件
  3. 查看波形

main.cpp内容:

#include <bits/stdc++.h>
#include "Vtop.h"
#include "verilated_vcd_c.h"
signed main(){VerilatedContext* contextp = new VerilatedContext;Vtop* top=new Vtop(contextp);VerilatedVcdC* tfp = new VerilatedVcdC;contextp->traceEverOn(true);top->trace(tfp,0);tfp->open("wave.vcd");while(contextp->time()<100){int a=rand()&1;int b=rand()&1;top->a=a;top->b=b;top->eval();tfp->dump(contextp->time());contextp->timeInc(1);//std::cout<<t<<" "<<(int)top->a<<" "<<(int)top->b<<" "<<(int)ctop->c<<std::endl;assert(top->c == (a ^ b));}tfp->close();return 0;
}

最后必须写tfp->close();,亲测否则不会生成波形文件。

还需要再gtkware左侧双击才能显示波形。

接入NVBoard

刚才的文件目录结构有很多不规范之处

参照NVBoard官方仓库的样例:

  • csrc:存放.cpp文件
  • vsrc:存放.v文件
  • constr:存放.nxdc文件

其中constr文件夹默认npc下没有给出。用于绑定nvboard引脚。

如果你创建一个不绑定任何引脚的.nxdc文件,比如:

top=top

并仿照官方样例的main.cpp结构,修改之前的main.cpp

#include <bits/stdc++.h>
#include "Vtop.h"
#include "verilated_vcd_c.h"
#include <nvboard.h>
static TOP_NAME dut;
void nvboard_bind_all_pins(TOP_NAME* top);
static void single_cycle() {dut.clk = 0; dut.eval();dut.clk = 1; dut.eval();
}
signed main(){nvboard_bind_all_pins(&dut);nvboard_init();VerilatedContext* contextp = new VerilatedContext;Vtop* top=new Vtop(contextp);VerilatedVcdC* tfp = new VerilatedVcdC;contextp->traceEverOn(true);top->trace(tfp,0);tfp->open("wave.vcd");while(contextp->time()<100){nvboard_update();single_cycle();}tfp->close();return 0;
}

Makefile文件抄过来,界面大概是这个样子的:

经过stfsc,没发现官方仓库example目录下没有办卡前端的配置项。

也就是说,这个办卡的前端是固定的,通过.nxdc文件绑定引脚,控制显示内容。

接入双控开关

对于板载的16个开关,期望需求是:

  • 开关拨上去的时候,上方的灯是亮的
  • 开关拨下去的时候,上方的灯是灭的

顶层模块是topled myLed用于创建一个led模块,并将引脚绑定。

模块间绑定之后,还需要将顶层模块与NVboard绑定,这一部分资料较少,可以选择STFRC阅读源码。

编辑top.nxdc

top=topledr (LD15, LD14, LD13, LD12, LD11, LD10, LD9, LD8, LD7, LD6, LD5, LD4, LD3, LD2, LD1, LD0)
sw (SW15, SW14, SW13, SW12, SW11, SW10, SW9, SW8, SW7, SW6, SW5, SW4, SW3, SW2, SW1, SW0)

左侧是ledrsw的顶层模块的输入输出引脚

  • 命名由开发者自定义

右侧的(LD15, ..., LD0)是将引脚绑定到NVboard的对应位置

  • 命名在NVboard中写死

运行效果:

http://www.yayakq.cn/news/602452/

相关文章:

  • 烟台网站建设技术托管oss可以做网站根目录吗
  • 做一个网站得多少钱wordpress自适应手机主题
  • 重庆拓达建设集团网站移动端网站开发项目报告
  • 网站建设目的意义如何进行电子商务网站建设
  • 网站风险怎么解决方案班级优化大师是干什么用的
  • 正规营销型网站定制怎么开始做网站
  • 湖南网站建设价格费用低成本做网站 白之家
  • 海南省城乡建设厅网站首页浙江建设网一官方网站
  • 站长工具推荐seo综合查询域名注册用个人还是公司
  • 浙江华纳建设有限公司网站打字赚钱一单一结app
  • 杭州网站排名seodede减肥网站模板
  • 免费建立自己的网站空间互联网营销师报名入口官网
  • 临沂网络网站建设企业名称禁限用规则
  • 建设网站网站企业做窗帘的网站
  • 北京通州马桥网站建设外贸网站建设解决方案
  • 深圳制作网站推荐微信如何做有趣的短视频网站
  • 南皮做网站郑州十大网站建设公司
  • 国外建设工程招聘信息网站有没有专门做帽子的网站
  • 网站备案包括空间内容吗聊城网站建设报价
  • 免费的网站模板下载建设一个网站需要的条件
  • 短视频素材下载网站无水印xwiki做的网站
  • 邯郸网站设计哪家好南京前十名传媒广告公司
  • 常州网站建设报价ui素材网站
  • 永久一级传奇网站网站建设开发教程视频
  • 网站关键词推广方案网站seo其应用
  • 好上手的做海报网站互动平台抽手机
  • 数据管理系统网站模板重庆工程信息网官网首页
  • 常德农科院网站seo推广怎么做视频教程
  • 手机网站设计理念android下载安装app
  • 海报模板网站有哪些视频怎样连接到wordpress