serdes集成流程前端
serdes是 IP中间比较大的复杂的一个。集成前需要进行准备工作,千万不要一上来就写代码,这样非容易越写越差,先要做好规划,与合入计划。
1.收到IP材料后,第一时间检查内容都有哪些资料可以学习,使用。
2.重点学习数据手册或用户手册或集成手册,先了解内部模块框图,再看接口信号描述,资源要求比如RAM、FIFO的规格,地址空间,总线配置位宽范围,时钟频率等。
看下top层代码是否和手册有出入。
3.写详细设计方案和时钟复位框图。需要包括以下内容:
- 项目需求规格尤其速率,并口位宽,输入差分时钟频率,功耗,插损范围。
- harden划分与示意图
- IP差分时钟级联示意图
- 时钟与复位设计方案
- 内部子模块设计说明
- 总线划分地址仲裁说明(总线转换需求)
- RAM/ROM规格说明
- IP内部地址范围
- PAD需求使用说明
- JTAG口连接关系
- ATE IP TEST方案
4.开始代码设计与寄存器表格填写生成。
申请RAM资源:是否有特殊需求,比如超大RAM,大于8K的就算超大RAM。电源是否和数字CORE是否一致,如果不一样要通知后端联系采购或者联系厂家提供准备;是否有字节使能功能;是否有ECC/PARITY校验需求;读写延时需求;大于1K的必须用RAM库,小于1K的可以用REG搭建。
建议先写整体的从顶层到底层的模块名称例化。
然后用IP包一层需要的PHY,尽量提供复用律,能一个PHY解决所有harden的需求。
复位同步处理,到对应的时钟。
输入输出top的信号必须加打拍模块,尤其是并口数据到PCS的至少打3拍(500MHZ以上的),其他的状态信号打1拍就可以。
DFT先不要连接,等DFT的正式方案出来后再连接,因为DFT方案也在反复的调整,提前连接会导致反复的无效修改。
用PHY再去和集成top连接,top 外再单独加一层甚至两层,可以用来做Lever shift以及整体打拍fed.
电源管脚不要例化出来,后端会自行处理。
PAD用或者不用全都拉到top层。
最后做整体集成连接,VCS编译,nlint检查。
然后增加ATE 测试的相关test mode,rst,en,GPIO等信号。
提交DC LINK,检查代码规范,信号跨时钟处理。
5.提交验证进行通流测试,用IP 的testbech配置,搭建UVM测试PRBS。先保证同流,然后检查输出的各种rdy,lock,valid信号是否有效。
6.综合 SDC确认,综合log 告警消除分析。给后端设计进行时钟频率,数据流介绍。根据后端要求进行处理优化。
7.预留管脚,接口的输入输出信号预留一定数量的bit,用于100%后的临时增加信号只在和harden内部进行修改。寄存器需要预留5+5个输入输出寄存器,防止后续ECO时需要临时增加寄存器。
8.准备前端设计的接口信号和对接模块,chip top 进行评审;准备IP接口信号设计用法处理材料与厂家预约会议进行讲解review,发现问题及时修改。
serdes集成流程前端的更多相关文章
- 基于JavaScript google map集成流程
google地图集成流程 一.获取Google Map API密钥 1.进入Google官网 => https://www.google.com.hk/ ,申请一个谷歌账号(如果没有)然后访问下 ...
- 我在阿里这仨月 前端开发流程 前端进阶的思考 延伸学习的方式很简单:google 一个关键词你能看到十几篇优秀的博文,再这些博文中寻找新的关键字,直到整个大知识点得到突破
我在阿里这仨月 Alibaba 试用期是三个月,转眼三个月过去了,也到了转正述职的时间.回想这三个月做过的事情,很多很杂,但还是有重点. 本文谈一谈工作中遇到的各种场景,需要用到的一些前端知识,以及我 ...
- iOS Sonar 集成流程
https://gold.xitu.io/entry/5781e6872e958a0054c93368 作者:advancer_chen,原文链接:http://my.oschina.net/Chen ...
- JFinal Web开发学习(八)后台集成H-ui-admin前端框架
h-ui-admin是一个很不错的前端框架h-ui实现的一个后台管理系统的前端. 1.在WebRoot目录下新建admin目录 2.下载h-ui-admin(当前最新是2.5版本)并解压至admin文 ...
- 使用Jenkins来实现内部的持续集成流程(上)
前言 Jenkins和TeamCity都是大杀器,用于搭建内部持续集成环境都是妥妥的.本篇主要介绍Jenkins的安装,下篇将介绍相关配置和使用. 目录 安装和配置 第一次启动 插件安装,第一次进入时 ...
- 讯飞语音唤醒SDK集成流程
唤醒功能,顾名思义,通过语音,唤醒服务,做我们想做的事情. 效果图(开启应用后说讯飞语音或者讯飞语点唤醒) 源码下载 地址:http://download.csdn.net/detail/q48788 ...
- 使用Jenkins来实现内部的持续集成流程(下)
目录 配置项目构建 添加任务 添加源代码地址和登录凭据 添加构建触发器 TFS添加WebHook 添加构建步骤 后端UI API端 配置项目构建 1.添加任务 2.添加源代码地址和登录凭据 添 ...
- Spring boot集成Websocket,前端监听心跳实现
第一:引入jar 由于项目是springboot的项目所以我这边简单的应用了springboot自带的socket jar <dependency> <groupId>org. ...
- 时序数据库TDengine 详细安装+集成流程+问题解决
官方文档:https://docs.taosdata.com/get-started/package/ 点击进入 产品简介 TDengine 是一款高性能.分布式.支持 SQL 的时序数据库 (Dat ...
- SpringBoot集成Freemarker前端模板
1.在pom.xml中引入freemarker的jar包 <dependency> <groupId>org.springframework.boot</groupId& ...
随机推荐
- 快速解决 const 与 typedef 类型组合时 ,const修饰谁的问题
C++使用typedef 给复合类型定义别名时,与const结合会产生看似"令人困惑"的类型推定,例如 typedef char* pstring; const pstring c ...
- 手写raft(二) 实现日志复制
1. Raft日志复制介绍 在上一篇博客中MyRaft实现了leader选举,为接下来实现日志复制功能打下了基础: 手写raft(一) 实现leader选举 日志复制是raft最核心也是最复杂的功能, ...
- MindSponge分子动力学模拟——Constraint约束
技术背景 在前面的几篇博客中,我们已经介绍了MindSponge的基本使用方法,比如定义一个分子系统.计算分子的单点能以及迭代器的使用等.有了这些基础的教程,用户以及可以执行一些比较简单的模拟任务,比 ...
- 如何在kubernetes中实现分布式可扩展的WebSocket服务架构
如何在kubernetes中实现分布式可扩展的WebSocket服务架构 How to implement a distributed and auto-scalable WebSocket serv ...
- 开源XL-LightHouse与Flink、ClickHouse之类技术相比有什么优势
Flink是一款非常优秀的流式计算框架,而ClickHouse是一款非常优秀的OLAP类引擎,它们是各自所处领域的佼佼者,这一点是毋庸置疑的.Flink除了各种流式计算场景外也必然可以用于流式统计,C ...
- Python脚本批量造数据、跑定时任务协助测试
批量造数据 连接Mysql的信息 1 import pymysql 2 # 数据库连接信息 3 # 多个库要有多个conn 4 conn = pymysql.connect( 5 host=" ...
- 对某个接口进行限流 以 Aop 注解的形式绑定接口 用redis实现
简单的针对某个接口进行限流,如果需要整体限流的话还是建议在网关上面或者服务器上面动手Controller: @LimitRequest(count = 1,time = 60 * 1000 * 2) ...
- burpsuite验证码爆破后台夺权
目录 准备工作 爆破 同时爆破用户名密码和验证码 筛查爆破结果的成功输出 创建新用户远程桌面连接 准备工作 安装python 安装muggle_ocr库 运行xp_CAPTCHA服务端 burpsui ...
- Apache(2.4.49 2.4.50)--目录遍历--命令执行--(CVE-2021-42013)&&(CVE-2021-41773)
Apache(2.4.49 2.4.50)--目录遍历--命令执行--(CVE-2021-42013)&&(CVE-2021-41773) 复现环境 采用Vulfocus靶场环境进行复 ...
- commons中StringUtils的全解
StringUtils()方法的导入包是:org.apache.commons.lang3.StringUtils 作用是:StringUtils()方法是 Apache Commons Lang 库 ...