用户数据的FLASH存储与应用(FPGA架构)

该系列为神经网络硬件加速器应用中涉及的模块接口部分,随手记录,以免时间久了遗忘。

一 背景

       我们知道,在FPGA做神经网络应用加速时,涉及到权重参数的存储和加载。通常在推理过程中,会将权重参数存储在外部DDR或片上SRAM上。但是对于一些大的网络模型,往往片上RAM受限而无法完全保存权重,因此需要将权重放置在外部DDR或者PSRAM等外部存储器中,等具体需要的时候,从片外load进片上,然后计算完丢弃,重新load下一批次权重。

       这里就涉及到,当我们的应用固化后,片外DDR存储器权重加载问题,通常包括集中方法,一是上电后,通过PCIE/UART/SD卡等load进DDR;另一种方法是将权重和FPGA bit文件一并打包存储在FLASH中,上电后,从FLASH中加载至片外DDR,或者直接load进片上SRAM。

       为了简化设计,这里采用第二种方法,将FPGA位流和权重等用户数据打包存入Flash配置芯片中。

二 方案设计

     FPGA:XC7A50T

     配置芯片:MX25L6433F Flash

为了简化设计,这里采用第二种方法,将FPGA位流和权重等用户数据打包存入Flash配置芯片中。

      简单讲就是通过VIVADO的工具,将用户数据和FPGA bit进行打包生成mcs,同时注意需要将用户数据存储在程序空间之外。上电后,通过SPI_Loader将Flash中的用户数据,加载至外部DDR即可。

架构分析:

       SPI接口部分,没有什么新意,和常规读写FLASH一样,用户接口为了方便,直接采用AXI协议进行控制,方便与标准总线互通。

       另外,由于涉及对FLASH读控制操作,需要配置FLASH管脚,需要调用STARTUPE2原语,用于对CCLK进行设置,用于该时钟。

调用方法:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/537469.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】双向链表及LRU缓存的实现

目录 前言 1. 在原有的自定义链表类 Linked 的基础上,添加新的 “节点添加”方法 addNode(Node node) 测试用例 测试结果 2. 在自定义链表类的基础上,使用双重循环“强力” 判断两个节点是否发生相交 测试用例 测试结果 3. 在自定义链表类的基础上…

DBeaver 生成的DDL没有字段注释

场景,需要拷贝几个表。但是因为一些原因无法使用navicat DBeaver生成的DDL语句又没有字段注释 如图: 可以通过以下SQL解决 select * from user_col_comments where table_name 表名 AND owner库名 效果如下: select concat(comment on …

程序调试工具gdb

1.由于在编写程序的过程中,通常会触发计算机无法识别的逻辑错误,导致程序运行的最终结果不尽人意。 (1)在【Linux】系统下利用【gdb】调试工具进行段错误排查: 步骤:1.根据给定链接设置系统允许生成core文件…

Prompt提示工程上手指南:基础原理及实践(二)-Prompt主流策略

前言 上篇文章将Prompt提示工程大体概念和具体工作流程阐述清楚了,我们知道Prompt工程是指人们向生成性人工智能(AI)服务输入提示以生成文本或图像的过程中,对这些提示进行精炼的过程。生成人工智能是一个根据人类和机器产生的数…

在线编辑字体工具,支持对字体查看编码以及编辑

公司一个沉寂多年的项目需要进行二开,前面的开发的同学已经离开,对于项目情况了解较少,开发的时候发现缺失很多小图标,但是对原来有那些图标也不太了解 目标 1、知晓字体包里的旧的图标是什么样子的?2、在旧字体包中导…

科技成果鉴定测试如何进行?第三方检测机构进行鉴定测试的好处

科技成果鉴定测试,作为科技领域中一项重要的质量检验手段,具有广泛的应用范围。旨在为科技成果的研发者和使用者提供客观、科学、权威的鉴定结果,从而评估科技成果的技术水平和市场竞争力。   科技成果鉴定测试是对科技成果进行系统、全面的…

PCL 点云开源库

PCL 点云开源库 The Point Cloud Library (PCL) is a standalone, large scale, open project for 2D/3D image and point cloud processing. PCL is released under the terms of the BSD license, and thus free for commercial and research use. 点云库 (PCL&…

08.JavaScript中的编程思想,构造函数和原型对象

一、编程思想 学习 JavaScript 中基于原型的面向对象编程序的语法实现,理解面向对象编程的特征。 1.面向过程 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次 调用就可以了。 举个…

【Linux】互斥 | 死锁

线程互斥 一些概念 临界资源:多线程之间共享的资源就是临界资源。通常为一些全局的变量。临界区:访问或者修改临界资源的代码就是临界区。互斥:任何时刻,保证只有一个执行流访问临界资源。原子性:不受调度机制打断的操…

在 Java 中,如何使用文件保存包含文字和数字的 Swing 表格?

要在Java中使用文件保存包含文字和数字的Swing表格,您可以按照以下步骤进行: 1. 首先,您需要创建一个Swing表格,并向其中添加包含文字和数字的数据。 2. 接下来,您可以使用Java中的文件操作类(如FileWrit…

【Xposed插件】 核心破解 兼容 9.0 去除系统签名校验,直装修改APK,降级安装APP

文章转载于: https://blog.coderstory.cn/corepatch-p/ 核心破解 是一款基于xposed模块开发的小工具。 可以用来去除系统签名校验,直装修改APK,降级安装APP. 至于用来干啥的,大家都懂的。 链接:https://pan.baidu.com/s/1Etp8tdJY…

设计模式 -- 2:策略模式

目录 总结部分:策略模式的优点部分代码部分 总结部分: 策略模式和简单工厂模式很像 区别在于 简单工厂模式 需求的是由工程创造的类 去给客户直接答案 而策略模式在于 我有主体 一个主体 根据策略的不同来进行不同的计算 我的主体就负责收钱 然后调度相…