spartan6不能直接把时钟连到IO上

1、问题的提出:spartan6中不允许时钟信号直接连到IO口上面?

2、解决办法:

ODDR2的使用

ODDR2Primitive: Double Data Rate Output D Flip-Flop with Optional Data Alignment, Clock Enable and Programmable Synchronous or Asynchronous Set/Reset

 

ODDR2 在spartan6的使用 - Djerly·Adams - 天堂路十一号

The ODDR2 is an output double data rate (DDR) register useful in producing double data-rate signals exiting the FPGA. The ODDR2 requires two clocks to be connected to the component, C0 and C1, so that data is provided at the positive edge of both C0 and C1 clocks. The ODDR2 features an active high clock enable port, CE, which may be used to suspend the operation of the registers and both set and reset ports that may be configured to be synchronous or asynchronous to the respective clocks. The ODDR2 has an optional alignment feature, which allows data to be captured by a single clock yet clocked out by two clocks.

Usage

The ODDR2 currently must be instantiated in order to be incorporated into the design. In order to change the default behavior of the ODDR2, attributes may be modified via the generic map (VHDL) or named parameter value assignment (Verilog) as a part of the instantiated component. The ODDR2 may be either connected directly to a top-level output port in the design where an appropriate output buffer can be inferred or to an instantiated OBUF, IOBUF, OBUFDS, OBUFTDS or IOBUFDS. All inputs and outputs of this component should either be connected or properly tied off.

Available Attributes

DDR_ALIGNMENT – Specifies how the data will be captured on the D0 and D1 ports. When set to "NONE", the data on the D0 port will be aligned with the positive edge of the C0 clock and the data on the D1 port will be aligned with the positive edge of the C1 clock. When set to "C0", the data on both D0 and D1 ports are aligned to the positive edge of the C0 clock and when set to "C1", the data on the D0 and D1 ports are aligned to the positive edge of the C1 clock. The output data Q is always presented on the positive edge of both clocks.

INIT – Specifies the initial value upon power-up or the assertion of GSR for the Q port. This attribute may be set to 1 or 0.

SRTYPE – When set to "SYNC", the reset, R, and set, S, ports are synchronous to the associated clock inputs. When set to "ASYNC", the set and reset ports are asynchronous to the clock.

VHDL Instantiation Templatede style="color: rgb(69, 69, 69); line-height: 21px;" >
-- ODDR2: Output Double Data Rate Input Register with
-- Set, Reset and Clock Enable. Spartan-3E
-- Xilinx HDL Libraries Guide version 7.1i

ODDR2_inst : ODDR2
generic map (
DDR_ALIGNMENT => "NONE", -- Sets output alignment 
-- to "NONE", "C0" or "C1"
INIT => '0', -- Sets initial state of the Q0 
-- output to ‘0’ or ‘1’
SRTYPE =>= "SYNC") -- Specifies "SYNC" or "ASYNC" 
-- set/reset
port map (
Q => Q, -- 1-bit DDR output data
C0 => C0, -- 1-bit clock input
C1 => C1, -- 1-bit clock input
CE => CE, -- 1-bit clock enable input
D0 => D0, -- 1-bit data input (associated with C1)
D1 => D1, -- 1-bit data input (associated with C1)
R => R, -- 1-bit reset input
S => S -- 1-bit set input
);


-- End of ODDR2_inst instantiation 
de>Verilog Instantiation Templatede style="color: rgb(69, 69, 69); line-height: 21px;" >
// ODDR2: Output Double Data Rate Input Register with
// Set, Reset and Clock Enable. Spartan-3E
// Xilinx HDL Libraries Guide version 7.1i

ODDR2 #(
// The following parameters specify the behavior
// of the component.
.DDR_ALIGNMENT("NONE"), // Sets output alignment 
// to "NONE", "C0" or "C1"
.INIT(1'b0), // Sets initial state of the Q 
// output to 1'b0 or 1'b1
.SRTYPE("SYNC") // Specifies "SYNC" or "ASYNC" 
// set/reset
ODDR2_inst (
.Q(Q), // 1-bit DDR output data
.C0(C0), // 1-bit clock input
.C1(C1), // 1-bit clock input
.CE(CE), // 1-bit clock enable input
.D0(D0), // 1-bit data input (associated with C0)
.D1(D1), // 1-bit data input (associated with C1)
.R(R), // 1-bit reset input
.S(S) // 1-bit set input
);


// End of ODDR2_inst instantiation 
de>For More Information

Consult the Spartan-3E Data Sheets.

转载于:https://www.cnblogs.com/chip/p/5245648.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/257597.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Html5 Canvas斗地主游戏

过完年来公司,没什么事,主管说研究下html5 游戏,然后主管就给了一个斗地主的demo,随后我就开始看代码, 现在我看了html5以及canvas相关知识和斗地主的demo后,自己用demo上的素材试着写了个斗地主&#xff0…

mysql的查询、子查询及连接查询

一、mysql查询的五种子句 where子句(条件查询):按照“条件表达式”指定的条件进行查询。 group by子句(分组):按照“属性名”指定的字段进行分组。group by子句通常和count()、sum()等聚合函数一起使用。 h…

WebLogic11g-常用运维操作

转自:https://dead-knight.iteye.com/blog/1940399 希望这篇能把weblogic运维时经常遇到的问题、常用的配置汇总到一起。 1、配置jvm参数: 一般在domain启动过程中会看到以下启动的日志信息,如下图所示: 图中红色方框部分为启动we…

当安全遇到大数据 “永恒之蓝”也将无所遁形!

文章讲的是当安全遇到大数据 “永恒之蓝”也将无所遁形!5月12日,席卷全球的勒索病毒“永恒之蓝”让全世界都为之震动,这是迄今为止全球最大规模的勒索病毒网络攻击,100多个国家受到病毒感染,国内中石油、公安内网、高校…

[ES] 安装

1.ElasticSearch安装的准备工作 Linux:CentOS6.4 Elasticsearc:elasticsearch-2.2.0 JDK:jdk-7u79-linux-x64 IK:1.8.0 MAVEN:apache-maven-3.3.3-bin 2.配置网络静态文件 虚拟机设置桥接模式 配置:vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVIC…

基于Eclipse搭建STM32开源开发环境

最近项目不忙,想着没事看看简单的嵌入式,弄弄物联网什么的。于是就从廉价的STM32开刀了。因为一直是做PC软件开发的,那VS的智能感知那叫一个爽啊,相比之下,觉得这个Keil简直就像文本编辑器一样low。于是想换一个开发环…

数据中心不再有空调、风扇等冷却装置会怎样?

数据中心的变革有望依赖移动设备实现,手机里轻便设备或将成为下一代数据中心的基础设施,服务Google和Facebook等大型的应用程序服务企业。同时,这种商业模式也会构建新一代企业的发展形态,为初创企业带来前所未有的机遇。 CSDN大数…

.NET 数据库缓存依赖策略实现

处理大型门户网站 一般都需要 使用缓存技术这个web加速器在 PHP 和 java 一般 使用的是 基于squid 来做. 当然在 windows .NET 平台也是可以的 squid有 windows版本.这个以后再去研究,现在 就介绍一下 .NET 自带的 缓存策略.Microsoft的petshop就用到了它;  一、基于数据库触…

设计模式之PHP项目应用——单例模式设计Memcache和Redis操作类

1 单例模式简单介绍 单例模式是一种经常使用的软件设计模式。在它的核心结构中仅仅包括一个被称为单例类的特殊类。通过单例模式能够保证系统中一个类仅仅有一个实例并且该实例易于外界訪问。从而方便对实例个数的控制并节约系统资源。假设希望在系统中某个类的对象仅仅能存…

【转】康拓展开

———本文转自:http://www.cnblogs.com/1-2-3/archive/2011/04/25/generate-permutation-part2.html 1、康托展开  康托展开的公式是 Xan*(n-1)!an-1*(n-2)!...ai*(i-1)!...a2*1!a1*0! 其中,ai为当前未出现的元素中是排在第几个(从0开始&a…

java jni so_java 用jni调用so全过程

这几天一直在研究JNI的开发过程,顺便把NDK环境搭建一起总结下。在windows环境下开发jni需要c/c编译器的支持,网络上我看很多人使用cygwin。呵呵我不是很喜欢使用它,感觉安装起来挺麻烦的。我使用GNUStep,下载地址http://www.gnust…

Linux下安装jdk

参考于:http://www.cnblogs.com/caosiyang/archive/2013/03/14/2959087.html 一、准备阶段 ①下载jdk-6u45-linux-i586.bin,通过xftp上传至Linux系统中 ②在命令行执行 ./jdk-6u45-linux-i586.bin,生成目录jdk1.6.0_45 ③移动到/usr/share下&…

为Tiny4412设备驱动在proc目录下添加一个可读版本信息的文件

http://blog.csdn.net/morixinguan/article/details/77808088 上节,我们明白了proc文件系统的作用,接下来我们在友善之臂已经写好的led驱动的基础上,在proc目录下创建一个文件夹,然后加入led驱动的版本信息读取。 我们在init函数的…

java audiorecord_Android 录音实现(AudioRecord)

上一篇文章介绍了使用 MediaRecorder 实现录音功能 Android录音实现(MediaRecorder) ,下面我们继续看看使用 AudioRecord 实现录音功能。AudioRecord首先看看Android帮助文档中对该类的简单概述: AndioRecord 类的主要功能是让各种 Java 应用能够管理音频资源&#…

《架构探险——从零开始写Java Web框架》这书不错,能看懂的入门书

这书适合我。 哈哈,结合 以前的知识点,勉强能看懂。 讲得细,还可以参照着弄出来。 希望能坚持 完成啦。。。 原来,JSTL就类似于DJANGO中的模板。 而servlet类中的res,req,玩了DJANGO就觉得好熟悉啦。。。:&…

java 生成 tar.gz_一文教您如何通过 Java 压缩文件,打包一个 tar.gz Filebeat 采集器包...

一、背景最近,小哈主要在负责日志中台的开发工作, 等等,啥是日志中台?俺只知道中台概念,这段时间的确很火,但是日志中台又是用来干啥的?这里小哈尽量地通俗的说下日志中台的职责,再说日志中台之…

poj1741 Tree 点分治

入门题&#xff0c;算是对树分治有了初步的理解吧。 #include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<algorithm> #include<vector> #define REP(i,a,b) for(int ia;i<b;i) #define MS0(a) memset(…

深入理解 ajax_xhr 对象

2019独角兽企业重金招聘Python工程师标准>>> ajax技术的核心是XMLHttpRequest对象(简称XHR)&#xff0c;这是由微软首先引入的一个特性&#xff0c;其他浏览器提供商后来都提供了相同的实现。 IE5是第一款引入XHR对象的浏览器。在IE5中&#xff0c;XHR对象是通过MSX…

组函数及分组统计

分组函数 SQL中经常使用的分组函数 Count(): 计数 Max()&#xff1a;求最大值 Min()&#xff1a;求最小值 Avg()&#xff1a;求平均值 Sum()&#xff1a;求和 -- 统计emp表中的人数 select count(*) from emp; -- 统计获得奖金的人数 select count(comm) from emp;-- 求全部雇…

两张神图介绍python3和 2.x与 3.x 的区别

有感与第一张图, 做了第二张图.转载于:https://www.cnblogs.com/Vito2008/p/5280393.html