AI + Quartus + Modelsim 实践测试

/ 0评 / 0

我这次打算做一个实验,我只让AI完成,我中途不插入,不提供帮助,不写代码,之前用Vivado已经完成过一次,但是因为是Linux下完成的,而且用的是Vivado自己的仿真工具,本身来说比较简单,一旦到了Windows,很多东西就变了.

这次任务非常简单,主要是闪烁灯,但是增加了一些挑战,这样才能更贴合真实工程.

我的提示词是这么写的.

请在当前空目录下,从零创建一个可直接使用的 Quartus II 工程,并确保工程能在 Windows 上通过 Makefile 一键完成构建,仿真,生成报告,下载与查看波形.

[环境信息]

1. Quartus II 安装路径:C:\intelFPGA\18.1

2. MSYS2 / make 工具路径:C:\msys64\usr\bin

3. ModelSim 安装路径:C:\modeltech64_2020.4\win64\modelsim.exe

4. 目标芯片:EP4CE10F17C8

5. 板卡引脚:

   - LED1 = A3

   - LED2 = A4

   - CLK = E1,50MHz

6. 当前工程目录为空,请你自行规划文件结构.

[功能目标]

1. 设计一个使用 PLL 的硬件工程,PLL 可使用原语或 IP.

2. 让两个 LED 交替闪烁,且 LED 为高电平点亮.

3. 工程必须同时支持:

   - 前仿真

   - 综合

   - 布线

   - 资源利用率报告

   - 生成下载文件

   - 生成仿真波形文件

   - 启动 ModelSim 查看波形

[工程约束]

1. 请将所有工程文件合理组织,禁止把所有中间文件散落在工程根目录.

2. 建议使用 build/ 作为输出目录,中间产物,报告,网表,仿真结果都放到 build/ 下.

3. 必须提供可复用的 Makefile,target 语义清晰,例如:

   - make all

   - make clean

   - make synth

   - make fit

   - make asm

   - make report

   - make sim

   - make waves

   - make open

   - make program

4. Makefile 必须能在 Windows + MSYS2 环境下运行.

5. 不要依赖人工手动复制文件.

6. 如果需要 Quartus/ModelSim/license 路径,请先自动探测常见安装位置;找不到时要给出明确报错信息,而不是静默失败.

7. 仿真 testbench 必须包含明确结束条件,不能让仿真按真实时间无限跑.

8. 仿真时间要短且可控,能在几秒到几十秒内完成,不允许因为设计分频过大导致仿真过长.

9. 如果工程中存在 PLL IP 生成步骤,请自动处理,尽量让整个流程脚本化.

10. 如果发现某些功能在当前环境下无法完全自动完成,请先完成能自动完成的部分,并明确指出缺失项和原因.

[实现要求]

1. 给出完整工程文件,而不是只给关键代码.

2. 必须包含顶层 RTL,PLL 相关文件,testbench,约束文件,Makefile,以及必要说明.

3. 请保证引脚约束与板卡一致.

4. 请保证代码风格清晰,命名规范,可维护.

5. 若 PLL 生成文件受工具版本影响,请采用最稳妥的方案,并说明理由.

[验收标准]

1. `make all` 可以完成主要流程.

2. `make sim` 能在合理时间内结束,并生成波形文件.

3. `make report` 能输出资源利用率报告.

4. `make program` 能生成可下载配置文件.

5. 工程目录结构清楚,`build/` 中间产物集中管理.

6. 生成的工程可以在 ModelSim 中打开并查看波形.

7. 如遇 license,路径,IP 版本不一致等问题,请给出可执行的修复建议,而不是只描述问题.

[输出要求]

1. 先输出工程目录结构.

2. 再输出每个文件的内容.

3. 最后给出构建与仿真步骤说明.

4. 如果你做了任何假设,请单独列出.

5. 如果存在风险点,也请明确指出.

6. 请尽量一次性把工程做到可直接使用的程度.

大家应该都知道,这个需求的难度其实很低的,属于正常大学生随手能做的Hello World级别,为什么我不复杂一些,这样容易既是裁判,又是判决.

我测试了几个最近热门模型,不代表模型通用能力.

实际结果可见 https://github.com/nickfox-taterli/fpga_ai_task_demo

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注