diff --git a/国盾仿真报告模板(仅供参考).docx b/LogicStandard_08_xx项目xx配置项单元测试报告_V0.0.1.docx similarity index 100% rename from 国盾仿真报告模板(仅供参考).docx rename to LogicStandard_08_xx项目xx配置项单元测试报告_V0.0.1.docx diff --git a/[file_26dd3]ez-Q 2.5测控电子学固件设计要求.md b/[file_26dd3]ez-Q 2.5测控电子学固件设计要求.md index fed6d71..7fb2d2a 100644 --- a/[file_26dd3]ez-Q 2.5测控电子学固件设计要求.md +++ b/[file_26dd3]ez-Q 2.5测控电子学固件设计要求.md @@ -10,6 +10,7 @@ html: | 版本号 | 作者 | 修订原因 | 修订内容 | 日期 | | :----: | :----------: | :------- | :------------------------------------------------------- | :--------: | | v1.0 | 周爽| 初始版本 | - | 2026.04.13 | +| v1.1 | 周爽| 内容完善 | 1. 新增开发环境要求;
2. 修改 makefile;
3. 提供 Vivado 2024.2 + VCS 2018.09 虚拟机; | 2026.04.27 | # 1. 引言 @@ -18,18 +19,18 @@ html: # 2. 依据文件 | 序号 | 文件编号及文件名称 | 版本号 | | :--: | :------------------------------------------------------------: | :----: | -| 1 | ez-Q 2.5-RS-01_ez-Q 2.5测控系统研制项目需求文档 | v1.2 | -| 2 | ez-Q 2.5-SDD-01_ez-Q 2.5测控系统研制项目总体设计报告 | v1.0 | -| 3 | ez-Q 2.5-SDD-03_ez-Q 2.5测控系统标准交互协议及控制服务接口设计 | v1.3 | -| 4 | ez-Q 2.5-TK-SDD-001-调控子系统设计报告 | v1.0 | -| 5 | ez-Q 2.5-RD-SDD-01_ez-Q 2.5读出子系统总体设计 | v1.0 | -| 6 | ez-Q 2.5-CC-SDD-01_ez-Q 2.5通信子系统设计报告 | v1.0 | -| 7 | ez-Q 2.5-FB-SDD-01_ez-Q 2.5反馈子系统设计报告 | v0.2 | -| 8 | ez-Q 2.5-SDD-05_ez-Q 2.5测控系统调控通道编程控制模型 | v0.3 | -| 9 | ez-Q 2.5-SDD-09_ez-Q 2.5测控系统调控通道历史无关的配置功能项 | v0.3 | -| 10 | ez-Q 2.5-SDD-07_ez-Q 2.5读出子系统编程控制模型 | v0.1 | -| 11 | ez-Q 2.5-SDD-08_ez-Q 2.5读出子系统历史无关配置集 | v0.1 | -| 12 | ez-Q 2.5子系统间通信协议 | v0.1 | +| 1 | ez-Q 2.5-RS-01_ez-Q 2.5 测控系统研制项目需求文档 | v1.2 | +| 2 | ez-Q 2.5-SDD-01_ez-Q 2.5 测控系统研制项目总体设计报告 | v1.0 | +| 3 | ez-Q 2.5-SDD-03_ez-Q 2.5 测控系统标准交互协议及控制服务接口设计 | v1.3 | +| 4 | ez-Q 2.5-TK-SDD-001 调控子系统设计报告 | v1.0 | +| 5 | ez-Q 2.5-RD-SDD-01_ez-Q 2.5 读出子系统总体设计 | v1.0 | +| 6 | ez-Q 2.5-CC-SDD-01_ez-Q 2.5 通信子系统设计报告 | v1.0 | +| 7 | ez-Q 2.5-FB-SDD-01_ez-Q 2.5 反馈子系统设计报告 | v0.2 | +| 8 | ez-Q 2.5-SDD-05_ez-Q 2.5 测控系统调控通道编程控制模型 | v0.3 | +| 9 | ez-Q 2.5-SDD-09_ez-Q 2.5 测控系统调控通道历史无关的配置功能项 | v0.3 | +| 10 | ez-Q 2.5-SDD-07_ez-Q 2.5 读出子系统编程控制模型 | v0.1 | +| 11 | ez-Q 2.5-SDD-08_ez-Q 2.5 读出子系统历史无关配置集 | v0.1 | +| 12 | ez-Q 2.5 子系统间通信协议 | v0.1 | # 3. 定义、简写和缩略语 | 序号 | 名词/缩写 | 解释 | @@ -55,7 +56,7 @@ html: | 19 | SMA | SubMiniature version A,一种常用的射频同轴连接器类型 | # 4. 固件设计需求 -本章节基于 ez-Q2.5 测控电子学固件的任务背景和需求来源,提炼出各个子系统的固件设计需求。 +本章节基于 ez-Q 2.5 测控电子学固件的任务背景和需求来源,提炼出各个子系统的固件设计需求。 ## 4.1. 调控子系统固件需求 | 序号 | 功能 | 固件需求 | @@ -145,6 +146,11 @@ html: | 6 | 固件远程升级 | 固件支持flash的读写控制;机箱系统支持并行升级; | |7| 参数存储与加载 | 固件支持eMMC/EEPROM的读写控制,上电初始化阶段自动从eMMC/EEPROM读出配置参数。| +## 4.6. 开发环境要求 +逻辑开发环境:Vivado 2024.2; +逻辑仿真环境:QuestaSim, VCS; +嵌入式开发环境:Vitis 2024.2。 + # 5. 仿真与测试要求 各子系统的固件要经过固件仿真、固件自测、系统测试等阶段,来排查固件设计中可能存在的问题,充分验证固件设计的正确性、可靠性。本章节从固件仿真和固件自测2个方面来具体描述。 @@ -736,39 +742,43 @@ SIMV_OPTS = sync:busywait -Xdprof=timeline \ all: comp run comp: - if [ -f $(VHDL_FILELIST) ]; then \ - $(VHDLAN) $(VHDLAN_OPTS) -f $(VHDL_FILELIST); \ - fi + @mkdir -p work + + @if [ -f $(VHDL_FILELIST) ]; then \ + $(VHDLAN) $(VHDLAN_OPTS) -f $(VHDL_FILELIST); \ + fi - $(VLOGAN) $(VLOGAN_OPTS) -f $(VLOG_FILELIST) + $(VLOGAN) $(VLOGAN_OPTS) -f $(VLOG_FILELIST) - $(VCS) $(VCS_OPTS) $(TB_TOP) -l compile.log + $(VCS) $(VCS_OPTS) -top $(TB_TOP) -l compile.log run: - $(SIMV) $(SIMV_OPTS) - + $(SIMV) $(SIMV_OPTS) + dbg: - verdi -sverilog -f $(VLOG_FILELIST) $(FILES) -top $(TB_TOP) -ssf *.fsdb -nologo & + verdi -sverilog -f $(VLOG_FILELIST) $(FILES) -top $(TB_TOP) -ssf *.fsdb -nologo & clean: - rm -rf DVE* simv* *log ucli.key verdiLog urgReport csrc novas.* \ - *fsdb* *.dat *.daidir *.vdb *~ partitionlib/ dprof.dir/ \ - dprof.txt \ + rm -rf DVE* simv* *log ucli.key verdiLog urgReport csrc novas.* \ + *fsdb* *.dat *.daidir *.vdb *~ partitionlib/ dprof.dir/ \ + dprof.txt \ cov: - verdi -cov -covdir coverage/merged.vdb & + verdi -cov -covdir coverage/merged.vdb & cov_d: - dve -full64 -covdir coverage/*.vdb & + dve -full64 -covdir coverage/*.vdb & merge: - urg -full64 -dbname coverage/merged.vdb -flex_merge union -dir coverage/simv.vdb -parallel -maxjobs 64& + urg -full64 -dbname coverage/merged.vdb -flex_merge union -dir coverage/simv.vdb -parallel -maxjobs 64& merge_i: - urg -full64 -flex_merge union -dir coverage/merged.vdb -dir coverage/mem_test.vdb -dbname coverage/merged.vdb -parallel -maxjobs 64& + urg -full64 -flex_merge union -dir coverage/merged.vdb -dir coverage/mem_test.vdb -dbname coverage/merged.vdb -parallel -maxjobs 64& ``` 这个 makefile 从 filelist_vlog.f 中获取 verilog 文件路径,从 filelist_vhdl.f 中获取 VHDL 文件路径(非必须);默认的仿真顶层模块名为 tb_top,支持通过输入参数来更换顶层模块。 +将 makefile 从 Windows 系统复制到 Linux 系统时,可能会出现语法错误。原因是 makefile 语法要求命令行必须以 Tab 开头,不同系统下 Tab 占用的空格数量可能不同,通过 vim 或 gvim 编辑 makefile,把命令行开头的空格改为 Tab 即可。 + #### 8.2.2.5. 运行仿真 输入:``` make all ``` 运行仿真;如果需要更换仿真顶层模块,例如修改为 tb_top_sim,输入:```make all TOP=tb_top_sim``` @@ -903,8 +913,10 @@ u32 CalculateCRC32(u32 init_value, u8 *data, u32 length, u32 polynomial) ``` ## A.2. 下载链接 +Vivado 2024.2 + Vitis 2024.2:https://pan.quark.cn/s/b7886c4f623a 提取码:77t1 + QuestaSim 2014.1:https://pan.baidu.com/s/1vaCy-6WtdBn5Uew3WMBEcQ?pwd=71c4 -VCS 2018:https://pan.baidu.com/s/1E2mhK-jVyK_pisP2YnH4fg?pwd=fwj1 +CentOS 虚拟机(Vivado 2024.2 + VCS 2018.09 SP2):https://pan.quark.cn/s/1d13755fada3 提取码:wA6m