当前位置: 首页 > news >正文

ARM +FPGA GPIB IP核实现

目前在数据发生其技术上居领先的是美国的 Tektronix 公司和 Agilent
公司。
Agilent 公司的台式脉冲 / 数据发生器家族的最高时钟频率达 3GHz (定
时发生器),数据发生器 E81200 在通道数为 8CH 时数据速率为 660Mb/s,
即可以产生最高达 330MHz 的波形输出。
Tektronix 公司典型的台式数据发生器 Tek DG2020A, 时钟频率为
200MHz, 可以产生 100MHz 的图形数据输出,具有功能强大的波形编辑软
件。数据图形可由数据图形编辑器获得,编辑器包括了图形编辑器、定时
波形序列组合编辑器、表格编辑等波形编辑能力。国内一些高等院校和科
研单位正致力于研制数据发生器,有的可做到 100M 可编程数字信号,但
由于产品设计与生产工艺的不足,目前还未能形成数据发生器产品。
本文将围绕高速数据发生器的 GPIB 接口设计而展开,拟用专用芯片
NAT9914 FPGA 两种方案实现 GPIB 通讯接口硬件部分,加上相应的接口软
件驱动程序,从而能容易的把该仪器与其它设备集成实现系统的自动测试。
2.1 高速数据发生器的主要工作原理
高速数据发生器由硬件和软件组成,以下是整机硬件与软件的总体方
案及主要工作原理。
整个硬件系统以内嵌计算机为中心进行功能定义和模块划分,主要由
内嵌计算机、时钟单元、触发单元、模式数据产生单元、输出单元、面板
控制及显示、通信接口等组成。如图 2-1
时钟单元采用 DDS+PLL 实现,它是整个高速数据发生器工作的基础,
其主要作用是产生频率连续可调的内时钟信号;模式数据产生单元包括模
式数据控制电路、模式数据存储器和地址数据存储器三个组成部分,其中,
模式数据控制电路是整个单元电路的核心,它控制数据的多路同时输出以
及序列数据的按序切换,采用专用 ASIC 电路设计,数据存储器采用高速
SRAM ;触发单元用于输出同步时钟对外时钟进行变换; BNC 输出电路包
括模拟电路部分(即电平信息处理)、数字电路部分(即频率信息处理)、
末级驱动部分(信息合成输出)等三个组成部分;通信接口电路包括网口、
串口、 GPIB 等接口,其中网口和串口是内嵌计算机自带, GPIB 接口采用
FPGA 或专用芯片实现。

3.2.5 设计芯片的选择
本设计采用 ALTERA 公司的 FPGA 芯片 ACEX1K30QC208 来实现。
1K30 芯片属 ALTERA 公司的 ACEX 系列,该系列是 ALTERA 公司着眼于
通信、音频处理及类似场合应用而推出的 FPGA 器件系列芯片,它采用
0 .22/0.18 微米混合工艺,密度从从 1 万门到 10 万门。它依然采用了
ALTERA 传统的 LUT( 查找表 ) 结合 EAB( 嵌入式阵列块 ) 结构,芯片包含一
个嵌入式阵列,可实现存储器和专用的逻辑功能,可实现单双端口 RAM
模式;一个 IOE 包含一个双向的 I/O 缓冲器和一个寄存器, IOE 可以配置
位为输入、输出、或双向管脚。
ACEX1K30QC208 的最大系统门数为 3 万门,它有 1728 个逻辑宏单
元数和 6 个嵌入式系统块,最大可提供 24567RAM 位,引脚数为 208 个,
除去一些配置引脚和电源引脚,实际可用的引脚数为 141 个,因而可完全
满足设计的要求。 [8]
一旦电路设计固定,将其电路设计写入配置存储片 EPROM 中,每次
上电后写入 FPGA 中,实现设计的电路功能。
3.3 系统的具体设计实现
3.3.1 总体框架

为了具有一定的通用性,高速数据发生器的 GPIB 接口设计主要参考
NAT9914 芯片的内部结构,内部结构如图 3-1 所示。我们把整个待设
计系统划分为若干基本功能模块单元进行设计,在基本单元实现方法上采
用语言描述方式完成,这不仅方便将来跨开发环境的移植,而且在功能调
试以及对局部修改都带来很大的方便。
我们可以把整个系统划分为几个子系统。其中包括和微处理器 ISA
口的控制逻辑,与 GPIB 母线通信的接口功能,数据通道部分。对每个子
系统的设计也可以采用向下分解为模块级设计,这样在调试和组件系统
时,不仅具有很强的灵活性,而且方便代码的调试以及利于代码的重利用。
ISA 接口的控制逻辑,将会在第四章详细的介绍,由于我们所选的
FPGA 芯片 ACEX1K30QC208 的逻辑宏单元数够大,所以可以将这部分下
载到 FPGA 芯片中,而不需要再用一片 EPM3128ATC100-10 。这部分由于
后面阐述很详细,这里就不再赘述。
接口功能的设计是设计的核心,既是设计的重点又是难点。它不仅需
要对 IEEE488 协议有深刻的认识,而且,在接口功能子集的选择上也有一
定的要求。
数据通道部分有寄存器堆和组合功能电路,数据通道内部寄存器由 13
个寄存器组成,根据需要选择其中的 11 个,其中包括只读寄存器和只写
寄存器。它们是完成微处理器端到 GPIB 接口功能端的数据桥梁。该子系
统的设计亦是重点。
在完成基本模块以后,可以对每个模块生成图形化的符号( Symbol ),
在组建整个系统的时候可以用类似画电路图的方法直接对这些符号进行
调用,设计相对直观而且对整个系统级架构的把握相对全面。在完成整个
内部电路的“软件”设计以后就是具体的把该“软件核”( CORE )固化到
具体选定的 FPGA 上,通常利用 JTAG 端口下载。
3.3.2 接口功能状态机实现
按照高速数据发生器要求,设计时选取了八种接口功能:源方挂钩 、
受方挂钩、讲者、听者、服务请求、远控本控、器件清除、器件触发。把
各接口功能划分为若干相关状态,这样在用 Verilog HDL 实现这些相互作
用影响的状态跃迁的时候就可以引入状态机设计。
一、状态机简介
[12]
状态机( FSM )从不同的角度有不同的分类方法。
从状态变迁的确定性来说,可分为确定型有限状态机和非确定型有限
状态机。从状态变迁的触发条件来说,可分为同步状态机和异步状态机,
同步状态机的触发条件限定为某预定时刻和信号 ( 如系统时钟信号 clock)
输入信号的改变并不能立即产生相应的状态改变,异步状态机在任何时候
一旦输入信号改变的情况下都将发生状态变迁、产生相应输出。从状态机
的复杂程度来说,有单状态机 (single FSM) 和通信状态机之分,通信状态
机又可以分为主从通信状态机和并发通信状态机。单状态机从输入输出函
数关系来说,可以分为 Mealy 型和 Moore 型有限状态机,他们代表着最具
普遍意义上的有限状态机划分。
Mealy 状态机和 Moore 状态机
1 Mealy 状态机
Mealy 状态机的输出不仅仅是当前状态的函数,而且还是当前输入的
函数。图 3-2 Mealy 状态机的模型
2 Moore 状态机
Moore 状态机输出仅仅是当前状态的函数,与当前输入 X(t) 无关,所
Moore 状态机是 Mealy 状态机的一种特例。图 3-3 moore 状态机的模
型。
一般来说 Mealy 型状态机的状态变量较少,状态变量少意味着采用较
少状态存储单元,在实际的工程应用中多数采用 Mealy 状态机。Moo re
状态机易于代数分析,在 FSM 的代数理论中大都采用 Moore 型状态机作
为研究对象。
二、 接口功能的选取
IEEE488-1975 标准中规定了十种接口功能,每种接口功能按照特
殊的规约来行事。我们根据仪器的具体要求,选定八种接口功能,如表 3-1

相关文章:

ARM +FPGA GPIB IP核实现

目前在数据发生其技术上居领先的是美国的 Tektronix 公司和 Agilent 公司。 Agilent 公司的台式脉冲 / 数据发生器家族的最高时钟频率达 3GHz (定 时发生器),数据发生器 E81200 在通道数为 8CH 时数据速率为 660Mb/s, 即可以产…...

有消息称苹果Vision Pro会有廉价版

据外媒爆料,苹果公司苹果正在研发的头显产品Vision Pro,将会有廉价版。据透露,这款产品预计售价在1500美元至2500美元之间,虽然仍不算低,但较现有的Vision Pro 3499美元的起售价,还是有明显降低。 透露廉价…...

jenkins整合gerrit

背景 公司项目之前使用jenkins整合了gitlab,后面代码迁移到gerrit,所以需要修改jenkins配置。下面就简单的介绍一下jenkins如何整合gerrit。 环境 服务器:linux 环境:docker、jenkins 代码仓库:gerrit 前提 docke…...

PMP考完后应该考什么?

PMP(项目管理专业)认证是全球范围内最受认可和尊重的项目管理资格证书之一。通过PMP考试的人已经展示了他们在项目管理领域的知识和技能。然而,项目管理是一个不断发展和变化的领域,持续学习和进一步提升自己的能力是非常重要的。…...

科技资讯|苹果Vision Pro可通过手势ID检测不同用户

近日,美国专利局公布了苹果公司的一项专利申请,该专利申请涉及基于手部特征验证用户身份的技术。苹果指出,可能是多个家庭成员都想使用 Apple Vision Pro,系统必须识别不同的手势以控制 visionOS。在另一个示例中,苹果…...

CUDA编程模型- 层次结构

层次结构的划分 在GPU上,为了满足其大规模并行处理的特性,执行模型采用了大量并行化的轻量级线程。当我们谈到CUDA编程模型时,我们首先要考虑的是其线程执行层次结构。这种层次结构起始于一个被称为kernel的函数,当它在GPU上执行…...

国际站阿里云服务器无法安装程序怎么办?

阿里云服务器是阿里云推出的一种云核算产品,它能够帮助企业和个人快速建立、扩展和管理网络服务。可是,有时候在运用阿里云服务器时,或许会遇到无法装置程序的问题。本文将具体介绍如何处理这个问题。 阿里云服务器无法装置程序或许是由多种原…...

基于Vue+webpack之H5打包资源优化

前言 基于公司的业务以及今年接触到的项目大部分都是APP混合开发,即原生Android/ios H5页面开发APP。项目从产品需求的评审到方案的评审再到开发提测...这一套流程下来让我收货颇多。总想找个时间好好记录一番,大概还是自己懒惰了,一直拖到现…...

C#中DataAdapter对象

目录 一、DataAdapter对象概述 二、Fill()方法填充数据集DataSet 1.举例 2.源码 3.生成效果 三、Update()方法 1.Update()方法更新数据源 2.设置数据库主键 3.源码 4.生成效果 一、DataAdapter对象概述 DataAdapter对象是一个数据适配器对象,是DataSet与…...

Nginx正向代理,反向代理,负载均衡

Nginx正向代理,反向代理,负载均衡 Nginx当中有两种代理方式: 七层代理(http协议) 四层代理(tcp/udp流量转发) 七层代理:七层代理,代理的是http的请求和响应 客户端请求…...

安防视频监控平台EasyCVR出现视频流播放卡顿情况,如何优化?

视频集中存储/云存储/视频监控管理平台EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,实现视频资源的鉴权管理、按需调阅、全网分发、智能分析等。AI智能/大数据视频分析EasyCVR平台已经广泛应用在工地、工厂、园区、楼…...

VRRP基础

1.VRRP概述 VRRP( Virtual Router Redundancy Protocol,虚拟路由器冗余协议)既能够实现网关的备份,又能解决多个网关之间互相冲突的问题,从而提高网络可靠性。 通过把几台路由设备联合组成一台虚拟的“路由设备”&…...

虚实融合 智兴百业 | 赵捷副市长莅临拓世科技集团筹备展台指导,本月19号!拓世科技集团与您相约世界VR产业大会

新时代科技革命中,虚拟现实技术、5G和“元宇宙”概念崛起,助力全球范围内的数字经济和产业转型。我国也正迈向高质量发展攻坚阶段,在中部腹地的江西,政府结合全球技术趋势和自身发展需求,选择虚拟现实为新的经济增长点…...

2000-2023年省市县人工智能企业数量数据

2000-2023年省市县人工智能企业数量数据 1、时间:2000-2023年7月 2、指标:所属年度、所属省份、所属城市、所属区县、人工智能企业数量(省人工智能企业数量、地级市人工智能企业数量、区县人工智能企业数量) 3、来源&#xff1…...

CSP模拟58联测20 牵着她的手

题目大意 考虑所有 n n n行 m m m列的矩阵,矩阵中每个元素的值都在 1 1 1到 k k k之间。对于这样的矩阵 A A A,按照下面规则构造序列 x 1 , x 2 , ⋯ , x n m x_1,x_2,\cdots,x_{nm} x1​,x2​,⋯,xnm​: 对于 1 ≤ i ≤ n 1\leq i\leq n …...

电脑版便签软件下载用哪个?

在面对每天繁忙的工作日程,电脑是许多上班族不可或缺的工作助手,而一款得心应手的电脑便签软件,更是可以帮助大家记录、提醒、督促各项任务按时完成的得力助手。那么,究竟在众多的电脑便签软。件中,哪一位能够真正成为…...

别再卷组件库了,Vue 拖拽库都断代了!

前言 最近在测试 Tailwind CSS 和 Uno CSS 这两种原子化 CSS 工具是否能够有效减少打包后的文件体积时,先开始分析这些工具的优缺点,然后再直接上数据,最后做了一款经典的 TodoList 来进行测试,文章都写好了就差最后的数据了。 …...

利用服务器打造创新的在线社区

在这个数字化时代,服务器是实现创意项目的关键工具之一。虽然有许多用途,但其中最引人注目的是将服务器用于构建创新的在线社区。 为什么选择在线社区? 在线社区是连接人们、促进互动和分享知识的强大工具。它们可以围绕共同的兴趣、目标或…...

CSS动画实现节流

目录 介绍: 实现代码: 介绍: 节流指的避免过于频繁的执行一个函数,例如:一个保存按钮,为了避免重复提交或者服务器考虑,往往需要对点击行为做一定的限制,不然会频繁的请求接口,之前基本上是通过js去控制节…...

Apache Log4j Server (CVE-2017-5645) 反序列化命令执行漏洞

文章目录 Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645)1.1 漏洞描述1.2 漏洞复现1.2.1 环境启动1.2.2 漏洞验证1.2.3 漏洞利用 1.3 加固建议 Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645) 1.1 漏洞描述…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

线程同步:确保多线程程序的安全与高效!

全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

无法与IP建立连接,未能下载VSCode服务器

如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

HTML前端开发:JavaScript 常用事件详解

作为前端开发的核心,JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例: 1. onclick - 点击事件 当元素被单击时触发(左键点击) button.onclick function() {alert("按钮被点击了!&…...

数据库分批入库

今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...