Lattice Crosslink开发简介
Crosslink的开发工具是Diamond,内部逻辑资源lut大概有6k,并且有两个MIPI DPHY硬核,所以用户经常用它做MIPI接口桥接芯片。
硬件设计
Crosslink硬件设计,个人觉得有几份资料是必看的,我现在罗列出来供大家参考。
(1)Crosslink数据手册、Hardware Checklist、pinout信息等。资料下载链接为
http://www.latticesemi.com/en/Products/FPGAandCPLD/CrossLink
数据手册:简单介绍器件基本特性,比如逻辑资源、管脚数量、管脚速率、bank电压等等。
Hardware Checklist:用户画完原理图之后,再次通过这份文档检查一下,如果没有发现问题,那么证明原理图起码没有引脚分配之外的问题。
除此之外,官网还有一些PCB布局布线的一些推荐文档,原理图库,参考设计等,非常有用。
(2)crosslink开发板
在用户开发之前,如果能够得到一块开发板,那无疑非常有用,这不仅可以帮助我们快速熟悉器件软硬件环境,而且还可以作为一个硬件工程师开发的良好范本。上述链接pdf文档后面,有Crosslink的参考原理图,新用户可以借助它快速绘制原理图。
除了上述官网提供的资料以外,Lattice Crosslink还经常会遇到管脚分配的问题;
该开发板比lattice官方开发板降低了设计难度。把基本上IO引脚做了等长,MIPI引脚引出。板上可以通过选择不同bank的电压。
也可以用约束语句,约束IP核生产的引脚在对应MIPI通道上。
(2) Crosslink下载方式有两种,分别是IIC下载方式和SPI下载方式。软件默认SPI下载方式,会自动分配引脚,用户不用手动分配。
要注意有配置有两种模式,一个外部spi-flash和内部nvcm。内部ncvm是一次性编程不能再次修改。要注意。
(3) Crosslink有些IP会使用到特殊引脚,用户任意分配引脚会导致软件编译不了,出现错误。
除了上述问题之外,lattice管脚分配可能还会遇到一些问题,所以建议用户在分配完引脚之后,做一下“管脚评估”,这样就可以避免管脚分配错误带来的问题。
软件设计
Crosslink的代码开发工具是lattice Diamond,关于这个工具如何使用,我已在另一篇文章简单讲过,在这里不再赘述。打开IP核生成界面,里面有很多Crosslink上能够使用的IP核,并且每个IP核都有简单介绍,非常方便。
大家知道,Crosslink只有SPI和iic下载口,并没有JTAG调试口。Lattice原意是用户直接用他们生成好的IP,只需要分配好引脚即可完成开发,但是后续Crosslink IP核在使用的过程中有时会遇到问题,而且用户有可能会在Crosslink上开发一些自己的代码,经常会遇到需要调试代码的状况,所以后续lattice建议用户在开发Crosslink过程中,把JTAG口预留出来。
首先我要说一下,我上面说的JTAG是指Crosslink用软件模拟出来的JTAG,这个JTAG口不能用于下载,只能用来调试。
Crosslink 模拟JTAG调试步骤
(1)建立完整的Crosslink工程。
(2)点击reveal insert按钮,在工程中插入reveal analyzer,分配好采样时钟、触发信号、采样信号等,然后保存为.rvl文件。
(3)重新编译工程。编译好之后,打开Reports标签页下的Signal/Pad,查看Diamond软件给JTAG分配的引脚。当然,用户也可以分配好JTAG引脚之后再编译,如果引脚分配不合理,Diamond就会给出错误报告。

Lattice Crosslink开发简介的更多相关文章
- Scrum敏捷开发简介
Agile 敏捷开发实践中,强调团队的自我管理.在 Scrum 中,自我团队管理体现在每天的 Scrum 会议中和日常的协同工作,在每天的 Scrum 例会中,团队成员一般回答一下几个问题 : 昨天完 ...
- Kendo UI 移动应用开发简介
Kendo UI 移动应用开发简介 Kendo UI 支持开发 Web 应用,前面介绍的 SPA,也支持开发移动应用,至于使用 HTML5 + JavaScript + CSS 开发移动是不是一个好的 ...
- Webservice WCF WebApi 前端数据可视化 前端数据可视化 C# asp.net PhoneGap html5 C# Where 网站分布式开发简介 EntityFramework Core依赖注入上下文方式不同造成内存泄漏了解一下? SQL Server之深入理解STUFF 你必须知道的EntityFramework 6.x和EntityFramework Cor
Webservice WCF WebApi 注明:改编加组合 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下, ...
- Defi开发简介
Defi开发简介 介绍 Defi是去中心化金融的缩写, 是一项旨在利用区块链技术和智能合约创建更加开放,可访问和透明的金融体系的运动. 这与传统金融形成鲜明对比,传统金融通常由少数大型银行和金融机构控 ...
- Linux C++ 开发简介
主要介绍将Windows程序迁移到Linux系统相关知识 简介 Windows程序迁移到Linux系统可能需要修改很多代码, 既需要了解Linux平台的开发知识, 也需要了解Windows平台代码如何 ...
- Linux C++ 开发简介(包括Linux守护线程)
阅读目录 简介 操作系统 编辑器 编译器 构建系统 调试 IDE 可执行程序.动态库.静态库 服务 Windows服务简介 创建Windows服务 注册Windows服务 管理Windows服务 Li ...
- 机器学习的Spark与Scala开发简介
一.机器学习常用开发软件:Spark.Scala 1. Spark简介: MLlib包含的库文件有: 分类 降维 回归 聚类 推荐系统 自然语言处理 在线学习 统计学习方法:偏向理论性,数理统计的方 ...
- Python自动化开发-简介
1.Python简介 Python创始人 Guido Van Rossum,人称"龟叔",1989年圣诞节期间,为了在阿姆斯特丹打发时间,开发的一个新的脚本解释程序 作为ABC语 ...
- 微信小程序原生开发简介
简介: 总结: 1. 逻辑层使用js引擎,视图层使用webview渲染 2. 微信小程序已经支持了绝大部分的 ES6 API 3. 可以自动补全css的兼容语法 文档:https://develope ...
- JUC——JUC开发简介(一)
前言 JUC是Java5.0开始提供的一组专门实现多线程并发处理的开发框架,利用JUC开发架构可以有效的解决实际线程项目开发之中出现的死锁.阻塞.资源访问与公平机制. 此笔记主要记录java.util ...
随机推荐
- FreeRTOS教程3 中断管理
1.准备材料 正点原子stm32f407探索者开发板V2.4 STM32CubeMX软件(Version 6.10.0) Keil µVision5 IDE(MDK-Arm) 野火DAP仿真器 XCO ...
- 【深度学习基础】基于Numpy的循环神经网络实现和反向传播训练
本文是<深度学习进阶:自然语言处理>.<神经网络与深度学习>和<动手学深度学习>的读书笔记.本文将介绍基于Numpy的循环神经网络的前向传播和反向传播实现,包括RN ...
- 基于ads1292的心率呼吸信号检测解决方案开发阶段总结
前记 在医疗可穿戴领域,ads1292是一个无法绕过去的存在.今年几个项目产品都和这个芯片有关系. 从不了解到熟悉,算是踩了不少坑吧.对每次的项目进行复盘,是我这些年养成的最好的习惯了. ads129 ...
- enum class 用法
enum的主要缺点 1.类型不明确 首先,无法指定数据类型,导致我们无法明确枚举类型所占的内存大小.这种麻烦在结构体当中尤为突出,特别是当我们需要内存对齐和填充处理的时候. #include < ...
- 3、Azure Devops之Azure Repos篇
1.什么是Azure Repos Azure Repos,就是我们常说的代码仓库,相当于gitee,github,git,svn工具.主要是提供给开发人员使用的,管理.查看代码的部件.通过Files. ...
- java基础 韩顺平老师的 面向对象(中级) 自己记的部分笔记
272,包基本介绍 包的三大作用 1,区分相同的类 2,当类很多时,可以很好的管理类 3,控制访问范围 包基本用法 package com.hspedu; 说明: 1,package 关键字, ...
- 3DCAT+上汽奥迪:打造新零售汽车配置器实时云渲染解决方案
在 5G.云计算等技术飞速发展的加持下,云渲染技术迎来了突飞猛进的发展.在这样的背景下,3DCAT应运而生,成为了业内知名的实时云渲染服务商之一. 交互式3D实时云看车作为云渲染技术的一种使用场景,也 ...
- 设计模式之二:Builder模式
设计模式之二:Builder模式 目录介绍 0.关于Builder模式案例下载 1.Builder模式介绍 2.Builder模式使用场景 3.Builder模式简单案例 3.1 Builder模式U ...
- 懂一点前端—Vue快速入门
01. 什么是 Vue Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架,是当下很火的一个 JavaScript MVVM 库,是以 数据驱动和组件化 的思想构建的 ...
- 主nginx和子nginx-------域名-端口-解答
主nginx和子nginx-------域名-端口-解答 想象一下Nginx是一个接待员,每个端口就像接待员的一个电话线,而server_name就像是客户拨打的不同号码. 当你在Nginx配置文件里 ...