对 IP 内部实现与功能感兴趣或有疑问?

对 IP 内部实现与功能感兴趣或有疑问?

PDF 下载

by Robert Liang

IP core 是包含知识产权的逻辑设计块,通常可以看作一个“黑匣子”,使用者只需要关心如何使用即可。但是在某些特殊需求下,理解 IP core 的实现方法也有必要,下文给出办法。

本文基于 Quartus 18 . Quartus 8 步骤类似,Vivado 不展开介绍。

1. 阅读 Product Guide

image-20201030212427630

在这个文档中,将会展示设计流程、信号说明、时序要求、示例等。

image-20201030212842061

vivado 下文档打开方式类似,但也可以利用 DocNav 系统地查找文档。

image-20201030212901414

2. 查看 IP hierarchy

有些 IP 特别是软核,将会以 HDL (硬件描述语言)的形式提供其内部的实现结构1,可供设计人员参考。

  • Quartus 下需要将 IP core 嵌入设计当中 -> 编译 -> 将 Project Navigator 切换到 hierarchy 窗口

    IP 内部的模块是以 .tdf 2文件的形式保存的,使用 AHDL 语言,与 verilog \ VHDL 有相通之处。
    An ASCII text file (with the extension .tdf) written in the Altera Hardware Description Language (AHDL).A TDF can contain any combination of Boolean equations, truth tables, state machines, and group operations. TDFs can also be parameterized.
  • Vivado 下无需编译,直接在 Sources -> Hierarchy 窗口展开 IP 即可,但这对大 IP 来说会拖慢 Hierarchy update 的速度。如下图,Xilinx 对 FIFO 这个 IP 仅暴露了它的仿真模型。

此外,阅读 IP core 的内部实现有助于提高 FPGA 设计水平。对于一些基础的 IP 结构,也可以下载一些开源的设计源码,以解决跨平台的设计问题,这里不再详述。

3. 提问

  1. Intel Community 针对 Altera 器件,通常是经销商回答,英语。
  2. Xilinx 中文论坛 中文,版主有问必答,回复快。
  3. Stack Overflow 这个主要是解决 HDL 语言上的一些问题。

本文基于作者本人经验,仅供参考,欢迎讨论和补充。

[1]  涉及知识产权的保护,有可能只是一种替代的模型。[2]  参考 Text Design File Definition in Quartus II help

RobertLiang

A post-graduate in USTC.

You must be logged in to post a comment