目前网上只有ucf文件,vivado不兼容ucf格式

使用c++字符串转换的xdc格式代码

set_property -dict { PACKAGE_PIN R7   IOSTANDARD SSTL18_II  } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN V6 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN R8 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN U7 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN V7 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN R6 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN U6 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN R5 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN T5 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN U3 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN V5 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN U4 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN V4 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN T4 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN V1 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN T3 IOSTANDARD SSTL18_II } [get_ports { ddr2_dq[] }];
set_property -dict { PACKAGE_PIN T6 IOSTANDARD SSTL18_II } [get_ports { ddr2_dm[] }];
set_property -dict { PACKAGE_PIN U1 IOSTANDARD SSTL18_II } [get_ports { ddr2_dm[] }];
set_property -dict { PACKAGE_PIN U9 IOSTANDARD DIFF_SSTL18_II } [get_ports { ddr2_dqs_p[] }];
set_property -dict { PACKAGE_PIN V9 IOSTANDARD DIFF_SSTL18_II } [get_ports { ddr2_dqs_n[] }];
set_property -dict { PACKAGE_PIN U2 IOSTANDARD DIFF_SSTL18_II } [get_ports { ddr2_dqs_p[] }];
set_property -dict { PACKAGE_PIN V2 IOSTANDARD DIFF_SSTL18_II } [get_ports { ddr2_dqs_n[] }];
set_property -dict { PACKAGE_PIN N6 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN K5 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN R2 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN N5 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN L4 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN N1 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN M2 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN P5 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN L3 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN T1 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN M6 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN P4 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN M4 IOSTANDARD SSTL18_II } [get_ports { ddr2_addr[] }];
set_property -dict { PACKAGE_PIN R1 IOSTANDARD SSTL18_II } [get_ports { ddr2_ba[] }];
set_property -dict { PACKAGE_PIN P3 IOSTANDARD SSTL18_II } [get_ports { ddr2_ba[] }];
set_property -dict { PACKAGE_PIN P2 IOSTANDARD SSTL18_II } [get_ports { ddr2_ba[] }];
set_property -dict { PACKAGE_PIN L6 IOSTANDARD DIFF_SSTL18_II } [get_ports { ddr2_ck_p[] }];
set_property -dict { PACKAGE_PIN L5 IOSTANDARD DIFF_SSTL18_II } [get_ports { ddr2_ck_n[] }];
set_property -dict { PACKAGE_PIN N4 IOSTANDARD SSTL18_II } [get_ports { ddr2_ras_n }];
set_property -dict { PACKAGE_PIN L1 IOSTANDARD SSTL18_II } [get_ports { ddr2_cas_n }];
set_property -dict { PACKAGE_PIN N2 IOSTANDARD SSTL18_II } [get_ports { ddr2_we_n }];
set_property -dict { PACKAGE_PIN M1 IOSTANDARD SSTL18_II } [get_ports { ddr2_cke[] }];
set_property -dict { PACKAGE_PIN M3 IOSTANDARD SSTL18_II } [get_ports { ddr2_odt[] }];
set_property -dict { PACKAGE_PIN K6 IOSTANDARD SSTL18_II } [get_ports { ddr2_cs_n[] }];

使用C++写的转换代码(修改参数可以对任何代码使用)

#include <iostream>
#include <string> using namespace std; //set_property -dict { PACKAGE_PIN J15 IOSTANDARD LVCMOS33 } [get_ports { SW[0] }]; //NET "ddr2_addr[10]" LOC = "R2" | IOSTANDARD = SSTL18_II ; string stringConver(string a) {
string port;
string pin;
string type; int length = a.length(); int i = ;
for (; i < length; i++) {
if (a[i] == '"') {
port = a.substr(, i - );
break;
}
} for (i++; i < length; i++) {
if (a[i] == '"') {
pin = a.substr(i+, );
break;
}
} for (i++; i < length; i++) {
if (a[i] == '=') {
i++;
for (int j =;; j++) {
if (a[i + j] == ' ') {
type = a.substr(i+, j);
return (string)"set_property -dict { PACKAGE_PIN " + pin + " IOSTANDARD " + type + " } [get_ports { " + port + " }];";
}
}
}
}
return "";
} int main() { string proto[]; for (int i = ; i < ; i++) {
getline(cin, proto[i]);
} for (int i = ; i < ; i++) {
cout << stringConver(proto[i]) << endl;
} system("pause");
return ;
}

Nexys4 DDR MIG控制器引脚文件的更多相关文章

  1. angular ,require.js, angular-async-loader实现单页面路由,控制器js文件分离

    https://github.com/heboliufengjie/appRoute/tree/re re 分支,实现,路由配置,控制器js文件分离

  2. dubbo控制器xml文件报错

    在配置dubbo服务的过程中,经常会遇到虽然程序能够跑起来,但是配置文件一堆红叉,虽然不影响功能,但是确实很让人恶心. 报错信息如下: Multiple annotations found at th ...

  3. 基于MIG IP核的DDR3控制器(一)

    最近学习了DDR3控制器的使用,也用着DDR完成了一些简单工作,想着以后一段可能只用封装过后的IP核,可能会忘记DDR3控制器的一些内容,想着把这个DDR控制器的编写过程记录下来,便于我自己以后查看吧 ...

  4. Xilinx FPGA引脚txt文件导入excel中

    需求 为了把xilinx FPGA的官方引脚文件txt转成excel文件(实际官网中有对应的csv文件就是excel文件了...) xilinx FPGA引脚地址:https://china.xili ...

  5. Xilinx 7系列例化MIG IP core DDR3读写

    昨晚找了一下,发现DDR3读写在工程上多是通过例化MIG,调用生成IPcore的HDL Functional Model.我说嘛,自己哪能写出那么繁琐的,不过DDR读写数据可以用到状态机,后期再添砖加 ...

  6. 【接口时序】8、DDR3驱动原理与FPGA实现(一、DDR的基本原理)

    一. 软件平台与硬件平台 软件平台: 1.操作系统:Windows-8.1 2.开发套件:无 3.仿真工具:无 硬件平台: 1. FPGA型号:无 2. DDR3型号:无 二. 存储器的分类 存储器一 ...

  7. 基于Metronic的Bootstrap开发框架经验总结(5)--Bootstrap文件上传插件File Input的使用

    Bootstrap文件上传插件File Input是一个不错的文件上传控件,但是搜索使用到的案例不多,使用的时候,也是一步一个脚印一样摸着石头过河,这个控件在界面呈现上,叫我之前使用过的Uploadi ...

  8. Bootstrap文件上传插件File Input的使用

    基于Metronic的Bootstrap开发框架经验总结(5)--Bootstrap文件上传插件File Input的使用 Bootstrap文件上传插件File Input是一个不错的文件上传控件, ...

  9. 利用T4模板生成ASP.NET Core控制器的构造函数和参数

    前言 在ASP.NET Core中引入了DI,并且通过构造函数注入参数,控制器中会大量使用DI注入各种的配置参数,如果配置注入的参数比较多,而且各个控制器需要的配置参数都基本一样的话,那么不断重复的复 ...

随机推荐

  1. “microsoft ace oledb 12.0 未注册”疑云

    1. 有人说: 2015也是要安装32位的AccessDataengine,anycpu选32位优先才行,不然就是Microsoft.ACE.OLEDB.12.0未注册. hanstom,一个老调重弹 ...

  2. Linux Centos 7 RabbitMQ 安装

    下载地址:http://www.rabbitmq.com/releases/rabbitmq-server/ 找到rabbitmq-server-3.6.15-1.el7.noarch.rpm 第一步 ...

  3. C++Primer笔记-----day04

    1.函数指针.函数指针指向某种特定类型,函数的类型由它的返回类型和形参类型决定,与函数名无关.比如:bool lengthCompare(const string &,const string ...

  4. 【LUA table 移除操作非常慢】

    LUA的表有插入和删除两种操作.插入操作非常快,100000次操作都在0.01S左右,而删除操作在表元素大于10000时却急速变慢,测试如下: t = {} local t1= os.clock() ...

  5. Linux 登陆提示文字

    /etc/issue是从本地登陆显示的信息 /etc/issue.net是从网络登陆显示的信息 /etc/motd内容由系统管理员确定,常用于通告信息,如计划关机时间的警告等 每次用户登录时,/etc ...

  6. Linux服务管理 systemctl命令详解

    Linux服务器,服务管理--systemctl命令详解,设置开机自启动 syetemclt就是service和chkconfig这两个命令的整合     任务 旧指令 新指令 使某服务自动启动 ch ...

  7. 网络编程基础之C/S架构和TCP/IP协议

    一.何谓C/S架构 C指的是client(客户端软件),S指的是Server(服务端软件),既然我们的的标题是网络编程基础, 那我们就一起来学习怎样写一个C/S架构的软件,实现服务端与客户端软件基于网 ...

  8. Android 定时重复启动弹出窗口。

    本来想着用handlerpostdelay就可以实现,没想到演示后关闭应用居然报错. 后来想到是没有了activity. ((Activity)context).isFinishing() 可以传入c ...

  9. php获取远程图片模拟post,file上传到指定服务器

    1.获取远程图片 /** $path保存图片的地址 $url要获取的远程图片地址 **/ function getimg($path,$url){ $aext = explode('.', $url) ...

  10. java算法 第七届 蓝桥杯B组(题+答案) 9.取球博弈

    9.取球博弈  (程序设计) 两个人玩取球的游戏.一共有N个球,每人轮流取球,每次可取集合{n1,n2,n3}中的任何一个数目.如果无法继续取球,则游戏结束.此时,持有奇数个球的一方获胜.如果两人都是 ...