国产gowin开发板GW1NR-9K的PSRAM使用说明
开发板子采用GW1NNR-LV9LQ144PC6/I5 FPGA器件。具有低功耗,瞬时启动,高安全性,低成本,方便扩展等特点。本开发板价格价格便宜,板子扩张性容易,帮助用户比较快速进入国产FPGA学习能力。
开发板集成多个GPIO接口和多个LVDS接口,电压可以从3.3,2.5,1.8,1.2V选择。用户可以选择不同电压适配不同的IO口。其中每个VCCIO也是独立供电,可以很简单改装成其他的不同bank不同电压要求。
芯片资源GW1NNR-LV9LQFP144的资源有8640的LUT4,并且还有26个18K SRAM快,2个PLL锁相环,内部自带PSRAM 64M空间,

Gowin PSRAM Memory Interface IP是一个通用的PSRAM内存接口IP, 符合PSRAM标准协议。该IP包含PSRAM内存控制逻辑(Memory Controller Logic)与对应的物理层接口(Physical Interface,PHY)设计。Gowin PSRAM Memory Interace IP 为用户提供一个通用的命令接口,使其与 PSRAM 内存 芯片进行互连,完成用户的访存需求。

- 能与标准的 PSRAM 器件接口;
- 支持存储器数据路径宽度为 8、16、24、32、40、48、56 和 64 位;
- 支持 x8 数据宽度的内存芯片;
- 可编程突发长度 16、32、64、128;
- 时钟比例为 1:2
- 支持初始延时为 6;
- 支持固定延时模式;
- 支持电源关闭选项;
- 可配置的驱动强度;
- 可配置的自刷新区域;
- 可配置的刷新速率;
- 单通道双通道两种操作模式 IP 可选。
Gowin PSRAM Memory Interace IP 可支持的数据速率与效率为:
- 最高工作数据速率 333Mbps;
- 突发长度 128,带宽效率为 74%;
- 突发长度 64,带宽效率为 59%;
- 突发长度 32,带宽效率为 42%;
- 突发长度 16,带宽效率为 26%
Gowin PSRAM Memory Interace IP 基本结构如图 4-1 所示,主要包含 Memory Controller Logic、Physical Interface 等模块。。 图 4-1 中的 User Design 是 FPGA 中需要与外部 PSRAM SDRAM 芯片 所连接的用户设计。 图 4-1

Memory Controller Logic 是 Gowin PSRAM Interace IP 的逻辑模块,位 于 User Design 与 PHY 之间。Memory Controller Logic 接收来自用户接口 的命令、地址与数据,并按照一定逻辑顺序进行存储。 用户发送的写、读等命令和地址在 Memory Controller Logic 中进行排序 重组,组合成满足 PSRAM 协议的数据格式。同时,写数据时 Memory Controller Logic 会对数据进行重组和缓存,以满足命令和数据之间的初始延 时值,读数据时,Memory Controller Logic 会对读回的数据进行采样和重组, 恢复成正确数据。 PSRAM Memory Controller 主要由以下几个模块组成:CMD 单元、 WR_Data 单元、RD_Data 单元等,主要结构如图 4-2 所示。

PSRAM 必须经过读校准操作才能进行正常的写、读操作。因此上电后 PHY 会对 PSRAM 进行初始化读校准操作,初始化完成后返回初始化完成标 志 init_calib,单通道 PSRAM IP 会将两颗 psram 颗粒同时初始化,而双通 道 IP 则是两颗 psram 颗粒各自初始化,并将两个初始化完成信号分别送出 给用户使用。

用户可通过 addr、cmd、cmd_en 等用户接口发送操作命令与地址。
addr 为地址数据端口; 连续地址写操作时,相邻两次操作地址自加突发长度/2,连续地址读操作 相同;
cmd 为命令数据端口;
cmd_en 为地址与命令使能信号,高电平有效;
双通道 PSRAM IP 和单通道 PSRAM IP 的操作方式一致,但是双通道
PSRAM IP 两个通道的命令和地址是独立的,需要分别给出控制信号。 在应用中,用户接口的地址总线与物理内存的 ROW、Upper Column、 Lower Column 之间存在一定的映射关系,在本设计中,按照 ROW-Upper Column-Lower Column 的顺序进行依次排列,其寻址方案如图 4-5 所示。用 户在应用中,只需按照需要给出地址,不需要关心映射关系。

用户在使用 PSRAM 时,读写命令间隔需根据颗粒 tRWR 值进行计算, 以 166M 时钟,颗粒使用 W955D8MBY 为例,tRWR 最小值为 36ns,即读 写命令间隔需要大于 6 个时钟周期,在实际使用读写切换中,建议用户在写 数据全部写入后再进行读取操作,在读数据全部读出后,再进行写操作; 在用户端实际使用时两个命令(写-读/读-写/写-写/读-读)间隔需满足最 小间隔周期(图 4-8 中 Tcmd 周期数),即突发长度为 16 时,命令间隔最小 为 15 个时钟周期;突发长度为 32 时,命令间隔最小为 19 个时钟周期;突 发长度为 64 时,命令间隔最小为 27 个时钟周期;突发长度为 128 时,命令 间隔最小为 43 个时钟周期。
写数据
用户可通过用户接口 wr_data、data_mask 等端口将写数据发送给 Gowin PSRAM Memory Interface IP,写数据经过处理后会发送给 PSRAM 颗粒。
wr_data 为写数据端口;
data_mask 为写遮掩端口;
写数据通道与命令通道之间存在多种时序情况,下图以突发长度为 16 为 例;
双通道 PSRAM IP 与单通道 PSRAM IP 写操作模式一致,但是双通道 PSRAM IP 两个通道的数据端口是独立的,需要分别给出写数据;


读数据
用户可通过用户接口rd_data、rd_data_valid读取PSRAM返回的数据。
端口 rd_data 为返回的读数据端口;
端口信号 rd_data_valid 为读数据有效端口,当其为高电平时,指示此时 返回的 rd_data 有效;
读数据通道与命令通道之间存在多种时序情况,下图以突发长度为 16 为 例;
双通道 PSRAM IP 与单通道 PSRAM IP 读操作模式一致,但是双通道 PSRAM IP 两个通道的数据端口是独立的,需要分别接收 rd_data_valid 信号和 rd_data 数据


配置选项默认。

代码要记得顶层必须输出基本的IO口。


用上面的开发板子,执行测试。
按键KEY1的时候,写入psram的数据,并且都psram的数据,输出到串口上面。
十六进制显示,2个停止位,115200波特率,数据位8位,没有校验位。

国产gowin开发板GW1NR-9K的PSRAM使用说明的更多相关文章
- AC6102开发板USB3.0测试和使用说明
AC6102开发板USB3.0测试和使用说明 概述 AC6102上集成了一颗Cypress 推出的高性能USB3.0传输芯片CYUSB3014,Cypress称之为EZ-USBFX3.该芯片性能强劲, ...
- 华大单片机开发板HC32L13X上手入门
HC32L136开发板(如下图所示)分为板载调试模块(左半部分)和MCU开发电路(右半部分).二者中间通过邮票孔相连,如果将板子从中间掰开,板载调试模块就可以当一个CMSIS-DAP的仿真器来使用.此 ...
- 华大单片机开发板HC32F030上手入门
HC32F030开发板(如下图所示)分为板载调试模块(左半部分)和MCU开发电路(右半部分).二者中间通过邮票孔相连,如果将板子从中间掰开,板载调试模块就可以当一个CMSIS-DAP的仿真器来使用.此 ...
- ESP-EYE V2.1 开发板 WINDOWS 10 开发入门
准备工作 1 × ESP-EYE V2.1 开发板 1 × Micro USB B 电缆 1 × PC(Windows10) 简介 ESP-EYE 是一款面向人脸识别和语音识别市场的开发板,搭载 ES ...
- 转载:百为STM32开发板教程之十二——NAND FLASH
http://bbs.21ic.com/icview-586200-1-1.html 百为STM32开发板教程之十二——NAND FLASH 参考资料:百为stm32开发板光盘V3\百为stm32开发 ...
- 转载:百为STM32开发板教程之十一——NOR FLASH
转载:http://bbs.21ic.com/icview-586199-1-1.html 百为STM32开发板教程之十一——NOR FLASH 参考文档:百为stm32开发板光盘\st官方参考资料\ ...
- 东芝开发板驱动OLED模块显示LOGO图片
前言 在之前的两篇评测文章: 使用系统定时器SysTick实现精确延时微秒和毫秒函数 东芝MCU实现位带操作 介绍了系统SysTick实现精确延时,GPIO的输入输出使用,并实现了位带方式操作GPIO ...
- 东芝半导体最新ARM开发板——TT_M3HQ开箱评测
前言 最近从面包板社区申请到一块东芝最新ARM Cortex-M3内核的开发板--TT_M3HQ,其实开发板收到好几天了,这几天一直在构思怎么来写这第一篇评测文章,看大家在社区也都发了第一篇评测,我也 ...
- 织女星开发板RISC-V内核实现微秒级精确延时
前言 收到VEGA织女星开发板也有一段时间了,好久没玩了,想驱动个OLED屏,但是首先要实现IIC协议,而实现IIC协议,最基本的就是需要一个精确的延时函数,所以研究了一下如何来写一个精确的延时函数. ...
- 真正的RISC-V开发板——VEGA织女星开发板开箱评测
前言 由于最近ARM公司要求员工"停止所有与华为及其子公司正在生效的合约.支持及未决约定",即暂停与华为的相关合作,大家纷纷把注意力投向了另一个的处理器架构RISC-V,它是基于精 ...
随机推荐
- Codeforces Round 345 (Div. 1)A. Watchmen(容斥原理)
A. Watchmen 当欧几里得距离和曼哈顿距离相等时,\(x1==x2||y1==y2\) 这两个条件满足其一.这和容斥原理一样,至少选择一个的条件. 我们可以计算xi,以及小于i之前的这些,这样 ...
- OpenCV开发笔记(七十七):相机标定(二):通过棋盘标定计算相机内参矩阵矫正畸变摄像头图像
前言 通过相机图片可以识别出棋盘角点了,这时候我们需要通过角点去计算相机内参矩阵,通过上篇得知畸变的原理,所以我们尽可能要全方位都能获取标定图片,全方位意思是提供的多张图综合起来基本覆盖了相机所有 ...
- Word中的公式复制到Visio中乱码问题
将word中编辑好的公式复制到Visio中出现乱码问题 如图所示问题: 解决方案(Visio 选项 --> 高级 --> 显示 ->勾选禁用增强元文件优化) 具体的公式导入和解决操作 ...
- 两个int变量交换
两个变量int a,int b,不用临时变量过渡,两种方法: 第一种: a= a+b; b= a-b; a= a-b; 第二种:异或的方法,也就是位运算,两个相同的数异或是为0的. a= a^b; b ...
- TP6框架--EasyAdmin学习笔记:数据表添加新参数,如何强制清除缓存
这是我写的学习EasyAdmin的第六章,这一章我给大家分享下如何在数据表中添加新参数,并强制清除缓存 这一章的主题是我在开发中碰到的一个问题,当我在网上疯狂查找解决方法依旧一无所获后,我又尝试了从底 ...
- 记录--实现一个鼠标框选的功能,要怎么实现和设计 api?
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 前两年在一家做电商的公司做了一个需求:鼠标框选商品卡片,开始拖拽的时候合成一个然后改变位置,页面上有几千个所以还要结合虚拟列表.当时 ...
- 《.NET内存管理宝典 》(Pro .NET Memory Management) 阅读指南 - 第4章
本章勘误: 暂无,等待细心的你告诉我哦. 本章注解: 暂无 本章释疑: 暂无,等待你的提问 致谢: MVP 林德熙 MVP 吕毅 sPhinX 相关链接 试读记录
- Java中一个逐渐被遗忘的强大功能,强到你难以置信!!
大家好,我是冰河~~ 说起Java,简单好用,但是Java中很多牛逼的技术却逐渐被遗忘了~~ 在Java语言出现之前,很多系统都是使用C和C++开发的.Java出现之后,由于其面向对象的思想更加符合人 ...
- 什么是HSV色彩空间
BGR色彩空间是基于三基色而言,即红色.绿色.蓝色.而HSV色彩空间则是基于色调.饱和度和亮度而言的. 色调(H)是指光的颜色,例如,彩虹中的赤,橙,黄,绿,青,蓝,紫分别表示不同的色调.在OpenC ...
- date_histogram,es按照时间分组统计
日期直方图聚合(date_histogram) 与histogram相似,es中内部将日期表示为一个long值,所以有时候可以用histogram来达到相同的目的,但往往没有date_histogra ...