笔记:
该项目的文档正在更新,以反映新的重新设计版本的 Caravel 的更改。
Caravel 是一款用于 Efabless Open MPW 和基于 SkyWater Technologies 的 Sky130 节点的chipIgnite 穿梭机的模板 SoC。当前的 SoC 架构如下所示。
数据表和详细文档位于此处
Caravel 由线束框架和两个用于管理区域和用户项目区域的插入式模块的包装器组成。
该线束本身包含时钟模块、DLL、用户 ID、内务 SPI、POR 和 GPIO 控制。
GPIO 处理从管理 SoC 移出并移至 SPI。 SPI 获得叉骨接口;管理 SoC 通过 Wishbone 与 SPI 进行通信,而不是通过接管 4 引脚 SPI 接口。
像 ID 这样的新模块在每个 GPIO 上电时都有模式。可以用文本文件进行配置。 SPI 引脚固定用于启动时的操作。
上电时,SPI 自动配置 GPIO。可以通过 SPI 和 Wishbone 总线进行手动加载。
线束内但管理 SoC 外部的所有功能都合并到一个称为“内务管理”的大模块中。这包括用于所有所包含功能的许多寄存器,其中一个“前门”SPI 接口通过 GPIO 引脚 1 至 4 连接到 padframe,以及一个连接到管理 SoC 的“后门”叉骨接口。管理Soc为内务管理模块保留0x26000000处的内存块。内务管理模块通过使用字节宽 SPI 寄存器数据的接口与管理 SoC 交换数据。小型状态机读取四个连续的叉骨地址,地址解码器确定相应的 SPI 寄存器。状态机使 SoC 停止,直到所有四个字节都已处理完毕,然后返回确认信号。
管理区域是一个作为单独存储库实现的嵌入式模块。它通常包括一个基于 RISC-V 的 SoC,其中包括许多外设,如定时器、uart 和 gpio。管理区域运行的固件可用于:
管理区域为管理SoC 实现SRAM。
可以在此处找到管理核心的默认实例化。有关更多详细信息,请参阅管理核心的文档。
这是用户空间。它具有有限的硅面积2.92mm x 3.52mm
以及固定数量的I/O焊盘38
和电源焊盘4
。
用户空间可以访问管理 SoC 提供的以下实用程序:
38
IO口128
逻辑分析仪探头您的区域是完整的用户空间,因此请随意在此处添加您的项目或创建不同的宏并单独对其进行强化,然后将其插入到数字项目的user_project_wrapper
中或将其插入到模拟项目的user_project_analog_wrapper
中。
如果您正在为用户空间构建数字项目,请查看 caravel_user_project 上的示例项目。
如果您将使用 OpenLANE 来强化您的设计,请仔细阅读本自述文件中的说明。
数字用户项目应遵守以下要求:
user_project_wrapper
user_project_wrapper
遵循数字包装引脚顺序中定义的引脚顺序。user_project_wrapper
遵循 Digital Wrapper 固定配置中的固定设计配置。如果您正在为用户空间构建模拟项目,请检查 caravel_user_project_analog 上的示例项目。
模拟用户项目应遵循以下要求:
user_analog_project_wrapper
user_analog_project_wrapper
使用空的模拟包装器。user_analog_project_wrapper
遵循与空模拟包装器相同的引脚顺序和布局。 请确保在将任何内容提交到存储库之前运行make compress
。避免有 2 个版本的gds/user_project_wrapper.gds
一个是压缩的,另一个是未压缩的。
有关工具和版本控制的信息,请参阅 tool-versioning.rst。
gds/
:包括项目使用或生成的所有 gds 文件。def
:包括项目使用或生成的所有 def 文件。lef/
:包括项目使用或生成的所有 lef 文件。mag/
:包括项目使用或生成的所有 mag 文件。maglef
:包括项目使用或生成的所有 maglef 文件。spi/lvs/
:包含项目使用或生成的所有 SPICE 文件。verilog/dv
:包括所有模拟测试平台以及如何运行它们。verilog/gl/
:包括所有综合/详细的网表。verilog/rtl
:包括所有 Verilog RTL 和源文件。openlane/<macro>/
:包含用于在项目上运行 openlane 的所有配置文件。info.yaml
:包含本示例中所需的所有信息。请确保您指向精心设计的 caravel 网表以及 user_project_wrapper 的综合门级网表笔记:
如果您使用 openlane 来强化您的设计,verilog/gl
def/
lef/
gds/
mag
maglef
目录应由 openlane 自动填充。
检查 mpw-one-final 中用于 mpw-one 流片的 caravel。
>make ship
。