CIRCT项目firtool-1.103.0版本发布:硬件编译工具链的重要更新
CIRCT(Circuit IR Compilers and Tools)是一个开源的硬件编译工具链项目,旨在为芯片设计提供现代化的编译器基础设施。该项目基于MLIR(多级中间表示)框架,专注于将高级硬件描述语言转换为可综合的RTL代码。近日,CIRCT项目发布了firtool-1.103.0版本,带来了一系列重要的功能增强和错误修复。
本次更新的核心改进集中在ESI(Elastic Silicon Interfaces)子系统、FIRRTL编译器优化以及硬件模块处理等方面。ESI子系统新增了对主机内存访问的XRT平台支持,包括实现了主机内存读取路径仲裁器和可变大小读取功能。这些改进显著提升了硬件与主机内存交互的灵活性和效率。
在FIRRTL编译器方面,新版本增强了对firrtl.view操作的支持,并改进了GrandCentral功能。LowerLayers通道现在能够正确处理提取的verbatim中的内部引用,而AssignOutputDirs通道的位置也得到了优化。这些变化使得FIRRTL编译器在处理复杂硬件设计时更加可靠和高效。
模块处理方面也有重要更新。HW模块现在支持参数化多态性,这为硬件设计提供了更大的灵活性。同时,内存银行功能改进了对具有相同形状的memref::global操作的处理,防止了名称冲突问题。SCFToCalyx转换通道现在能够在BuildParGroup结束时规范化scf::if操作,提高了生成代码的质量。
Python绑定方面,项目已全面转向使用nanobind框架,这有望带来更好的性能和更简洁的API。此外,OM(Object Model)链接模块现在能够正确保留非OM操作,增强了系统的兼容性。
在基础架构方面,项目同步更新到了最新的LLVM提交版本,并移除了不必要的OperationPass模板实例化,优化了编译器性能。管道功能现在使reset信号变为可选,为设计者提供了更多灵活性。
RTGTest子系统改进了寄存器表示方式,使得测试更加准确和高效。ESI运行时增加了对XRT平台主机内存访问的支持,扩展了系统的应用场景。
总体而言,firtool-1.103.0版本在功能丰富性、稳定性和性能方面都有显著提升,为硬件设计者提供了更加强大和灵活的工具链支持。这些改进将有助于开发者更高效地实现复杂的硬件设计,特别是在需要与主机系统紧密交互的应用场景中。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0134
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00