前言 当需要大容量数据存储及处理的时候,FPGA内部自带的存储资源是远远不够的,所以问题来了,怎么使用外带的DDR3? 首要问题在于DDR3是什么?有没有协议?当然只是需要用Xilinx MIG IP去配置使用的话,DDR3内部信号变化关系不需要太明了,当然明了会更佳,有时间可以看看底层内部架构,只是使用MIG IP去配置DDR3的话不需要像写一个DDR3控制器那么明白. 所需要预先储备的知识: (1)阅读JEDEC  DDR3 SDRAM STANDARD (标准协议)(有空的童鞋可以阅读):…
本文设计思想采用明德扬至简设计法.在高速信号处理场合下,很短时间内就要缓存大量的数据,这时片内存储资源已经远远不够了.DDR SDRAM因其极高的性价比几乎是每一款中高档FPGA开发板的首选外部存储芯片.DDR操作时序非常复杂,之所以在FPGA开发中用途如此广泛,都要得意于MIG IP核.网上关于MIG控制DDR的资料很多,因此本文只讲述个人认为较重要的内容.由于MIG IP核用户接口时序较复杂,这里给出扩展接口模块用于进一步简化接口时序. 我们从IP核配置开始说起.Controller Opt…
昨晚找了一下,发现DDR3读写在工程上多是通过例化MIG,调用生成IPcore的HDL Functional Model.我说嘛,自己哪能写出那么繁琐的,不过DDR读写数据可以用到状态机,后期再添砖加瓦吧,当下先对比一下网上找的一段程序和自己例化后的程序. 另外,仿真了十余分钟,最后的是什么鬼?一头雾水T.T.想着每一次要分析信号要等那么久就难受. 更重要的是分享一波关于“Xilinx平台下DDR3设计教程”的资料.就其中的“仿真篇”而言,亲测可行,还是中文版 datasheet看着亲切.0.0…
最近学习了DDR3控制器的使用,也用着DDR完成了一些简单工作,想着以后一段可能只用封装过后的IP核,可能会忘记DDR3控制器的一些内容,想着把这个DDR控制器的编写过程记录下来,便于我自己以后查看吧,哈哈哈,闲话少说开始工作.这个DDR3控制器分两节内容吧,第一节就是MIGIP核的简单介绍和生成这个IP核再介绍一下自己封装这个IP的整体架构,第二节就来介绍一下各个模块的内容. 1.1 MIG IP 核介绍 1) MIG IP核架构 通过查阅ug586_7Series_MIS,我们可以看到MIG…
上一节中,记录到了ddr控制器的整体架构,在本节中,准备把ddr控制器的各个模块完善一下. 可以看到上一节中介绍了DDR控制器的整体架构,因为这几周事情多,又要课设什么的麻烦,今天抽点时间把这个记录完了,不然以后都忘了DDR该咋去控制了. 从本次实验的整体功能模块可以看出,最终我们只需要用户操作的信号为用户写入的256bit数据wr_ddr_data,写开始信号wr_start,数据请求信号data_req,读开始信号rd_start,读出的数据rd_ddr_data,读数据有效信号rd_dat…
DDR1,DDR2,DDR3内存条(DDR是Double Data Rate双倍速率同步动态随机存储器的英文缩写)就是俗称的一二三代内存条.这三种内存条工艺不同,接口不同,性能不同,互不兼容.要区分它们,也不难. 台式机内存: 1.如果要我说哪种内存条最好区分,我会选DDR1,也就是一代内存条.这种内存条的内存颗粒足足有二代三代的两倍,一看就知道是落后工艺,旧时代的产品. 2.仔细看看内存条上的标签,首先,这是一条金士顿牌子的内存条,频率为400MHZ,容量只有512M,也就是0.5G.频率才是…
PCIE_DMA实例四:xapp1052在Xilinx 7系列(KC705/VC709)FPGA上的移植 一:前言 这段时间有个朋友加微信请求帮忙调试一块PCIe采集卡.该采集卡使用xilinx xc7k410t做控制器,上位机为XP系统,原有的驱动和测试软件都是基于xapp1052写的.众所周知,Xilinx升级到7系列后,原来的pcie ip核trn接口统统转换成了axis接口,这可愁坏了之前用xapp1052的朋友,一下子不好用了,如何把xapp1052移植到K7系列FPGA上,貌似很有市…
十.MC8051软核在FPGA上的使用 本教程内容力求以详细的步骤和讲解让读者以最快的方式学会 MC8051 IP core 的应用以及相关设计软件的使用,并激起读者对 SOPC 技术的兴趣.本实验重点讲 8051Core 的应用,并通过一个简单 C51 程序对 51Core 进行硬件测试. 本实验教程的内容编排如下: 第 1 章简单的描述了 MC8051 IP core 的基本结构及一些应用说明. 第 2 章详细的介绍 8051Core 综合.编译应用.包括 Quartus II软件的基本应用…
基于dsp_builder的算法在FPGA上的实现   一.摘要 结合dsp_builder.matlab.modelsim和quartus ii等软件完成算法的FPGA实现. 二.实验平台 硬件平台:DIY_DE2 软件平台:quartus ii9.0 + ModelSim-Altera 6.4a (Quartus II 9.0) + dsp_builder9.0 + matlab2010b 三.软件平台的准备 1.软件的匹配 根据altera的官方文档,可以看到quartus ii.mode…
在Linux系统上限制远程登录的IP,使用系统自带的配置文件. /etc/hosts.allow /etc/hosts.deny 匹配原则  先allow 后deny.…
上午在论坛看到个热帖,里头的题目挺有意思的,简单的记录了一下. 0. 题目 在FPGA上实现一个模块,求32个输入中的最大值和次大值,32个输入由一个时钟周期给出.(题目来自论坛,面试题,如果觉得不合适请留言删除) 从我个人的观点来看,这是一道很好的面试题目: 其一是这大概是某些机器学习算法实现过程中遇到的问题的简化,是很有意义的一道题目: 其二是这道题目不仅要求FPGA代码能力,还有很多可以在算法上优化的可能: 当然,输入的位宽可能会影响最终的解题思路和最终的实现可能性.但位宽在一定范围内,譬…
人工智能正在经历一场变革,这要得益于机器学习的快速进步.在机器学习领域,人们正对一类名为“深度学习”算法产生浓厚的兴趣,因为这类算法具有出色的大数据集性能.在深度学习中,机器可以在监督或不受监督的方式下从大量数据中学习一项任务.大规模监督式学习已经在图像识别和语音识别等任务中取得巨大成功.深度学习技术使用大量已知数据找到一组权重和偏差值,以匹配预期结果.这个过程被称为训练,并会产生大型模式.这激励工程师倾向于利用专用硬件(例如 GPU)进行训练和分类.随着数据量的进一步增加,机器学习将转移到云.…
  [转] 原文              Android 手机上获取手机当前上网IP地址                (手机网关给手机号分配的IP) 每个手机上网通过移动网关的时候,网关都会给该手机号分配一个IP地址(当然这个IP地址会在下线上线后会改变,网关都有记录的) 现在做的应用需要获取该IP地址,提交给服务器,代码如下: [java] view plain copy /** * 用来获取手机拨号上网(包括CTWAP和CTNET)时由PDSN分配给手机终端的源IP地址. * * @re…
今天宝叔突然在群里发了个问题; host做如下配置,a.com会指向哪里?或者说ping一下a.com结果会是什么? 127.0.0.1 a.com 192.168.4.106 a.com 192.168.4.105 x.com a.com 192.168.4.107 a.com x.com 127.0.0.1 a.com what?host自上而下解析啊,这不妥妥的127.0.0.1么,一测试,啪啪啪的打脸了...输出的是192.168.4.106,为啥? 以下结论仅针对windows系统,l…
一.摘要 结合dsp_builder.matlab.modelsim和quartus ii等软件完成算法的FPGA实现. 二.实验平台 硬件平台:DIY_DE2 软件平台:quartus ii9.0 + ModelSim-Altera 6.4a (Quartus II 9.0) + dsp_builder9.0 + matlab2010b 三.软件平台的准备 1.软件的匹配 根据altera的官方文档,可以看到quartus ii.modelsim.dsp_builder和matlab的版本匹配…
很多人·在启动虚拟机后连接不上外网,即ifconfig没有ip地址,我总结了一下需要注意的地方: 以下全是在桥接模式. 1.在windows中打开任务管理器-->服务中找到一下几个服务,确保它们开启 2.重启虚拟机,若还是连不上网,需要初始化下VMware的网络配置,如下: 还原默认设置后,手动选择桥接到那一栏,选择有线网卡,重启虚拟机即可. 虚拟机的需要修改: 3.我以前还遇见过都不可以的,需要把上面做好后整台电脑都需要重启的情况,也不知道为什么,等以后知道了再补充上咯.…
<Windows Azure Platform 系列文章目录> 最近在帮助一个客户设置WAF (Web Application Firewall),WAF厂商要求在负载均衡器上,设置多个公网IP地址.架构如下图: 我研究了一下,在Azure ARM模式下可以实现,在这里记录一下. 在默认情况下,Azure负载均衡器可以有5个公网IP地址. https://docs.microsoft.com/en-us/azure/azure-subscription-service-limits 如果我们想…
安装Django  下载Django包,解压缩. CMD 进入解压路径下. 执行:python setup.py install 增加环境变量: C:\Python27\Scripts 测试django是否安装成功 shell import django django.VERSION 把Django导入项目 CMD 进入项目路径 执行 django-admin.py startproject 项目名  运行开发服务器 项目Django路径下  python manage.py runserver…
采用Xilinx Virtex-5 XC5VSX50T-FF1136 FPGA或者Xilinx Virtex-5 XC5VSX95T-FF1136的板子.采用ISE13.2环境.步骤:一.建立一个ISE工程:        BMDforPCIE工程的建立方法:bmd_sx50t文件夹包含BMD Desin for the Endpoint PCIE的全部源文件,但还未构成一个工程.其中bmd_design文件夹里的源代码主要分布在三个文件夹中:dma_performance_demo和examp…
一.Creat a new project,generate a new DDR3 IP,Close Project. 二.打开工程文件下的 X_example_design-->simulation-->generate_sim_example_design.qpf,运行TCL脚步文件里的verilog文件 三.Open modelsim,change direaction to 工程文件下的X_example_design-->simulation-->verilog-->…
php上传大于2M文件的解决方法 2016年12月11日 :: katelyn9 阅读数 php上传大于2M文件的解决方法 如上传一个文件大于2m往往是上传不成功的解决方法: php.ini里查找 查找 post_max_size 改为:post_max_size = 100M 查找upload_max_filesize,默认为2M 改为:upload_max_filesize = 100M 解决上传超时 默认是30秒 改为:max_execution_time = 0代表不限制 max_inp…
1.2GB的single rank SODIMMs配置pin还是和以前一样没有问题: 2.8GB SODIMMs配置pin需要注意4点: (1).所有的DDR3引脚都需要在连续的BANK上,例如Z7100的BANK33/34/35: (2).address信号线和control信号线必须在同一个BANK上: (3).address信号线和control信号线必须连续的3个BANK的中间BANK: (4).data信号所在的BANK所在的BANK必须挨着address信号线和control信号线所…
1.运用自动化脚本文件 do sim.do  其中不支持 .f文件 , 需要直接vlog 2.对于mig模型采用下面句型(根据example中do sim.do文件) vlog -sv +define+x4Gb +define+sg125 +define+x16 c0_ddr3_model.v vlog -sv +define+x4Gb +define+sg125 +define+x16 c1_ddr3_model.v vsim -t fs -novopt +notimingchecks -L…
Azure的每个VM都有多种IP地址,包括DIP.VIP和PIP.具体如下: DIP地址是在VM里能够看到的IP地址,即私网地址:PIP地址是这个VM关联的公网IP地址,即公网地址:VIP地址是负载均衡的地址. 目前Azure的VM已经支持每个网卡关联多个ipconfig,即可以支持VM的每个网卡关联多个私网和公网地址:DIP和PIP. 如下图: 具体配置如下: 1. VM种NIC的ipconfig 2. 添加ipconfig 点击添加后: 按相同的方法再添加第三个ipconfig,配置完后的配…
1.更新vivado的仿真库(data/secureip和verilog和vhdl文件夹)至最新的vivado库和生成IP的版本匹配: 2.vcs编译脚本里面把仿真库地址指向匹配的仿真库版本: 3.vcs编译选项添加system verilog的编译选线:-lca +verilog2001ext+.vp +systemverilogext+.sv \,其中蓝色字段为新加的表示支持.sv类型文件(system verilog)的编译.即可. 备注:-sverilog编译选项,编译报错,用+sver…
在vmware esxi环境通过创建VM安装完成openstack之后,发现创建Instance后网络不通,经过多方面排查,最后确定是vmware esxi标准交换机拒绝“混杂模式”所致,故打开“混杂”模式.…
可能是没有开启ssh server,接下来就是开启服务就好.命令如下: sudo apt-get install openssh-server 这样就OK啦…
在openstack上新建机器时,发现用户无法登陆. 检查该机器的22端口,返回 Connection refused.   ping该IP,发现可以ping通.   释放该浮动ip,然后去ping该地址,依然可以ping通.   追踪该地址,用命令  traceroute     发现192.168.9.61 这个地址跳转了2次,240这个IP是绑定的一台物理机,97这个IP是绑定的一台OpenStack的虚拟机. 表明192.168.9.61这个地址可能绑定了一台物理机.   试着在浏览器打…
推荐使用镜像安装Cent OS系统,或者在纯净安装完成之后在完成Apache+MySQL+PHP的时候不要每个单独安装,因为这样会出一些三者之间版本不配的问题,网上各种说法都有,查起来也非常困难,版本匹配之后又会遇到什么问题也无从知晓,反正这种单独安装的方式不适合一般的开发需求,商业开发也基本上都是使用现成的镜像直接安装环境,作为普通开发者,也不要太在这种没有技术含金量的事情上面画太多的时间. 如果不采用直接安装系统镜像的方式,还是想纯净安装,那我比较推荐的方式是,在安装好纯净的Cent OS系…
$ vim /etc/profile #####################环境变量################################# export TZ='Asia/Shanghai' export JAVA_HOME=/opt/jdk1.7.0_65 export HADOOP_HOME=/home/bigdata/hadoop-2.4.1 #export HADOOP_HOME=/opt/hadoop-2.4.1 export HIVE_HOME=/home/bigda…