CycloneIII内部资源概述



本人使用的Altera DE0使用的主控芯片为EP3C16F484C6,由上图可知包含15408个逻辑单元,56个M9K,56个18×18乘法器,4个PLL等资源。

Logic Elements and Logic Array Blocks(逻辑元件和逻辑阵列块)

LE

LE是FPGA中最小的逻辑单元,可以提供高效逻辑使用的高级功能。LE的结构如下图所示:

  • LUT:用于完成用户需要的逻辑功能,Cyclone III的查找表是4输入1输出,可以完成任何4输入1输出的组合逻辑
  • Programmable Register:可以配置成D触发器、T触发器、JK触发器等,每个寄存器包含4个输入信号,数据信号、时钟信号、时钟使能、复位信号。

LE有两种工作模式:

  • Normal mode:适合于一般的逻辑运算
  • Arithmetic mode:适用于实现加法器、计数器、累加器、比较器等

LAB

每个LAB都由以下元素组成:

  1. 16个LE
  2. LAB控制信号
  3. LE转移链
  4. 寄存器链
  5. 本地互联

本地互联用于在同一LAB内的LE之间传递信号;寄存器链用于将一个LE的输出传递到相邻的LE中。

LAB结构如图所示:

LAB Interconnects

LAB本地互连由同一LAB中的列和行互连和LE输出驱动。相邻的LAB、锁相环、M9K RAM块和从左到右的嵌入式乘法器也可以通过直接链路连接驱动LAB的本地互连。直接链接连接功能最大限度地减少了行和列互连的使用,提供更高的性能和灵活性。每个LE可以通过快速本地和直接链路互连驱动多达48个LE。

直接连接如下图所示:

Memory Blocks(内存块)

嵌入式内存结构由M9K内存块组成,可以配置内存块以提供各种内存功能,例如RAM,移位寄存器,ROM和FIFO等。

M9K的内存单位是9k bit,并不是9k byte,并且9k中有1k的空间用于校验等功能,实际可用空间为8kbit

Memory mode



M9K内存块不支持异步内存输入

Clocking mode



当使用Read or Write模式,如果对同一个地址进行读写操作,则输出的读数据是未知的。如果要使输出的数据是一个确定的信号,则需要使用single-clock模式或者IO-clock模式并且在 MegaWizard Plug-In Manager中选择合适的读写操作。

读写时违反内存块输入寄存器的建立和保持时间可能会导致内存内容的损坏

异步清零只在读地址寄存器、输出寄存器和输出锁存器上可用

Memory mode 和 Clocking mode的关系如下图所示:

Embedded Multipliers and Digital Signal Processing Support(嵌入式乘法器和数字信号处理支持)

乘法器结构

  • 输入的数据既可以先发送到输入寄存器也可以直接输入到乘法器,两个输入信号相互独立,例如:A信号可以通过寄存器将输入发送到乘法器,同时B信号可以直接发送到乘法器。
  • 根据乘法器的位宽和操作模式,单个乘法器可以并行的执行一次或两次乘法运算。
  • 两个输入信号如果都是无符号数,则输出数据也是无符号数;其中任何一个是有符号数的话,输出结果就是有符号数。

Clock Networks and PLLs(时钟网络和锁相环)

cyclone3内部资源的更多相关文章

  1. spring mvc: 多解析器映射(资源绑定视图解析器 + 内部资源[普通模式/]视图解析器)

    spring mvc: 多解析器映射(资源绑定视图解析器 + 内部资源[普通模式/]视图解析器) 资源绑定视图解析器 + 内部资源(普通模式)视图解析器 并存方式 内部资源视图解析器: http:// ...

  2. spring mvc:内部资源视图解析器2(注解实现)@Controller/@RequestMapping

    spring mvc:内部资源视图解析器2(注解实现)  @Controller/@RequestMapping 访问地址: http://localhost:8080/guga2/hello/goo ...

  3. spring mvc:内部资源视图解析器(注解实现)@Controller/@RequestMapping

    spring mvc:内部资源视图解析器(注解实现)@Controller/@RequestMapping 项目访问地址: http://localhost:8080/guga2/hello/prin ...

  4. Android4.4 在Framework新增内部资源编译不过的问题

    如果在Frameworks新增内部资源,并在Java代码中使用类似形式来引用资源:com.android.internal.R.layout.xxx,需要在frameworks/base/core/r ...

  5. TI C66x DSP 四种内存保护问题 -之- CPU訪问corePac内部资源时的内存保护问题

    CPU訪问corePac内部资源(L1.L2)时的内存保护(通过设置内存的訪问权限实现)等问题请參考以下两个blog.已经叙述的非常具体. "TI C66x DSP 系统events及其应用 ...

  6. TI C66x DSP 四种内存保护问题 -之- 外设訪问corePac内部资源时的内存保护问题

    外设訪问corePac内部资源(L1,L2)时的内存保护等问题请參考以下两个blog.已经叙述的非常具体. "TI C66x DSP 系统events及其应用 - 2"," ...

  7. mssql 数据库“查询处理器用尽了内部资源,无法生成查询计划。”问题的处理

    在项目中动态拼接sql语句,使用union all连接结果集,每个查询语句都使用了in(几百个数值).语句如: ,,,..............................) UNION ALL ...

  8. springmvc:BeanNameViewResolver访问内部资源视图对象和访问外部资源视图对象

    <!-- 处理器映射器 --> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerM ...

  9. 如何获得APP内部资源

    安装一个iTools(百度一下就有) 用USB连接设备,打开iTools

  10. SpringMvc之handler深入AbstractControllerhe和MultiActionController和内部资源视图解析器

    AbstractControllerhe 若处理器继承自AbstractController类,那么该控制器就具有了一些新功能.因为AbstractController类还继承自一个父类WebCont ...

随机推荐

  1. .Net Core 3.0 对 MongoDB 的多条件查询(两种)操作

    前言   在日常开发中,偶尔会用到 MongoDB 的数据操作,也花费了一些时间调试,因此在此处记录一下,共同进步. 废话少说,出招吧! 正文 2.1 准备工作 首先需要引入 .Net 平台链接 Mo ...

  2. cesium 绑定dom弹窗(跟随模型)

    https://blog.csdn.net/qq_36266612/article/details/109648367?utm_term=cesium%E6%80%8E%E4%B9%88%E6%B7% ...

  3. 遥遥领先 spring,中国人的 solon 来啦!10% 的体积,10倍的速度

    Solon 是什么? Java 生态型应用开发框架.它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态规模).与其他框架相比,它解决了两个重要的痛点:启动慢,费内存.2023 ...

  4. SpringBoot3集成ElasticSearch

    目录 一.简介 二.环境搭建 1.下载安装包 2.服务启动 三.工程搭建 1.工程结构 2.依赖管理 3.配置文件 四.基础用法 1.实体类 2.初始化索引 3.仓储接口 4.查询语法 五.参考源码 ...

  5. Selenium 学习笔记

    Selenium 学习笔记 Selenium 框架是时下在 Web 领域中被使用得最为广泛的自动化测试工具集之一,它能帮助程序员们面向指定的 Web 前端应用快速地开发出自动化测试用例,且能实现跨各种 ...

  6. Codeforces 1257D - Yet Another Monster Killing Problem

    题意: 有\(n\)个怪物,每个怪物有攻击力\(a_i\)点:有\(m\)个英雄,每个英雄有攻击力\(p_i\)点,耐力\(s_{i}\)点. 怪物需要被依次杀死(按输入顺序). 每一天可以挑选一个英 ...

  7. springboot下载文件 范围下载

    springboot下载文件 范围下载 关键词:springboot,download,Range,Content-Range,Content-Length,http code 206 Partial ...

  8. js递归查询之根据id查询当前对象

    需求:递归查询数组中id对应的数据 Json数据格式: 1 let cityArr = [ 2 { 3 id: 1000, 4 name: '四川省', 5 children: [ 6 { 7 id: ...

  9. 《流畅的Python》 读书笔记 230926(第一章后半部分)

    1.2 如何使用特殊方法 特殊方法的存在是为了被 Python 解释器调用的,你自己并不需要调用它们 就是说通常你都应该用len(obj)而不是obj.__len()__,无论是系统预置的,还是你自己 ...

  10. MySQL 高级(进阶) SQL 语句

    MySQL 高级(进阶) SQL 语句 use gy; create table location (Region char(20),Store_Name char(20)); insert into ...