Chisel Tutorial(六)——port
下面内容根据2015-7-10版的Chisel 2.2 Tutorial整理
port就是硬件单元对外的接口,须要指明方向(输入还是输出)。一个port声明的样例例如以下:
class Decoupled extends Bundle{
val ready = Bool(OUTPUT)
val data = UInt(INPUT, 32)
val valid = Bool(INPUT)
}
INPUT、OUTPUT指定方向,后面指出宽度。对于Bool类型。其宽度就是1,所以不须要明白指出。除了上述方式外,还能够例如以下定义:
class ScalaIO extends Bundle{
val in = new MyFloat().asInput
val scala = new MyFloat().asInput
val out = new MyFloat().asOutput
}
此处的方法asInput、asOutput为MyFloat中全部的元素指定方向。
Chisel Tutorial(六)——port的更多相关文章
- Chisel Tutorial(七)——模块
下面内容根据2015-7-10版的Chisel 2.2 Tutorial整理 Chisel中的模块与Verilog HDL中模块的概念十分相似,都是用层次结构描写叙述电路.Chisel中的module ...
- Chisel Tutorial(一)——Chisel介绍
Chisel是由伯克利大学公布的一种开源硬件构建语言,建立在Scala语言之上,是Scala特定领域语言的一个应用,具有高度參数化的生成器(highly parameterized generator ...
- Chisel3-创建工程并转换为Verilog代码
https://mp.weixin.qq.com/s/ie0R3v60IcrI6beTXHrgSg 基于Intellj IDEA+Scala插件模式开发 因为Chisel内嵌于Scala,所以 ...
- Python Tutorial 学习(六)--Modules
6. Modules 当你退出Python的shell模式然后又重新进入的时候,之前定义的变量,函数等都会没有了. 因此, 推荐的做法是将这些东西写入文件,并在适当的时候调用获取他们. 这就是为人所知 ...
- 【DM642学习笔记六】TI参考文档--DM642 Video Port Mini Driver
这个文档介绍了在DM642EVM板上视频采集和显示微驱动的使用和设计.用EDMA进行存储器和视频端口的数据传输.为了增强代码的复用性和简化设计过程,驱动分为通用视频端口层和特定编解码芯片微驱动层两个 ...
- Ruby on Rails Tutorial 第六章 用户模型
1.用户模型(1)数据库迁移Rails默认使用关系数据库存储数据,数据库中的表有数据行组成,每一行都有相应的列,对应数据属性.把列名命名为相应的名字后,ActiveRecord会自动把他们识别为用户对 ...
- 动手动脑,第六次Tutorial——数组和随机数数组输出及求和
作业课后作业1 阅读QiPan.java示例程序了解如何利用二维数组和循环语句绘制五子棋盘. 首先,定义string类型的二维数组,它和类的数组不一样,类的数组分配了空间后不能直接for循环赋值,st ...
- Mule ESB-Content-Based Routing Tutorial(2)
承接 Mule ESB-Content-Based Routing Tutorial(1) 五.执行应用程序 完毕创建,配置.并保存你的新的应用程序,您就能够在嵌入Mule的server上执行(包含 ...
- igraph Tutorial
igraph Tutorial¶ 参考http://www.cs.rhul.ac.uk/home/tamas/development/igraph/tutorial/tutorial.html ...
随机推荐
- 1.2(SQL学习笔记)高级数据过滤
一.AND 通过WHERE可以进行条件过滤,但只限于单个条件. 通过AND就可以连接多个条件,AND代表了和,即AND两边的条件全部满足才会通过筛选. 这就类似编程语言中的&&. 以下 ...
- Android:导入工程
File->new->Project->android->Android Project from Existing code 在Root Directory:中填写Andro ...
- Android Content Provider Security(转)
四大组件之一-content provider安全详解 原帖地址:http://drops.wooyun.org/tips/4314 0x00 科普 内容提供器用来存放和获取数据并使这些数据可以被所有 ...
- NHibernate官方文档中文版——批量插入(Batch inserts)
A naive approach t7o inserting 100 000 rows in the database using NHibernate might look like this: 一 ...
- new placement 的使用
#include <iostream> #include "TModel.h" int main() { ]; std::cout<<"Sourc ...
- nodejs调试利器:supervisor
测试多了,是不是感觉每次要重新node一次app.js,很烦恼? 用supervisor,只有有改动,页面刷新就可以看到效果,不用重启node.js 安装: npm -g install superv ...
- 理解Vue的状态管理模式Vuex
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 状态管理模式.集中式存储管理,一听就很高大 ...
- nodejs之路-[0]安装及简易配置
题外话: 之前写过ubuntu下编译nodejs- 传送门:Ubuntu15.04编译安装nodejsV0.12.3 只是如今基本在win下做开发了-. 就以这篇帖子为开头,作为我踏上nodejs之路 ...
- HLJU 1221: 高考签到题 (三分求极值)
1221: 高考签到题 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 9 Solved: 4 [Submit][id=1221">St ...
- SVG路径字符串格式
命令 名称 参数 M 移动到(moveTo) (x y)+ Z 闭合路径(closepath) (none) L 直线(lineTo) (x y)+ H 水平直线 x+ V 垂直直线 y+ C 曲线( ...