基于Xilinx-ISE-12.4的FPGA使用例子

基于Xilinx-ISE-12.4的FPGA使用例子
基于Xilinx-ISE-12.4的FPGA使用例子

基于ISE 12.4的FPGA设计基本流程

关键字:FPGA XILINX ISE 12.4ISE设计流程时序仿真

信息化调查找茬投稿收藏评论好文推荐打印社区分享

ISE是使用XILINX的FPGA的必备的设计工具,它可以完成FPGA开发的全部流程,包括设计输入、仿真、综合、布局布线、生成BIT文件、配置以及在线调试等,功能非常强大。本文主要通过一个最简单的“点亮LED灯”实例介绍了基于ISE 12.4软件的FPGA设计流程,包括设计输入、仿真、约束、下载等。

0 前言

一套完整的FPGA设计流程包括电路设计输入、功能仿真、设计综合、综合后仿真、设计实现、添加约束、布线后仿真和下载、调试等主要步骤。

图1 FPGA设计流程

目前赛灵思公司FPGA设计软件的最新版本是ISE 13,由于笔者暂未用到该版本,本文中以ISE 12.4为例。

ISE 9以后的版本的安装文件都是集成到了一个包当中,安装起来很方便。软件包里面包含四个大的工具,ISE Design Tools、嵌入式设计工具EDK、PlanAhead、Xtreme DSP设计工具System Generator。ISE设计工具中包含ISE Project Navigator、ChipScope Pro 和以下工具:

图2 ISE软件包中部分工具

做一般的FPGA逻辑设计时只需要用到ISE设计工具,下面通过一个最简单的“点亮LED 灯”实例,具体讲解ISE设计工具的使用,并介绍基于ISE的FPGA设计基本流程。

1 创建工程

(1)在桌面快捷方式或开始→所有程序→Xilinx ISE Design Suite 12.4→ISE Design Tools中打开ISE Project Navigator。

(2)单击File→New Project...出现下图所示对话框。

图3 新建工程对话框

在该界面输入工程名、选择工程存放路径、选择顶层模块类型,其中顶层模块类型有硬件描述语言(HDL)、原理图(Schematic)、SynplifyPro默认生成的网表文件(EDIF)、Xilinx IP Core和XST生成的网表文件(NGC/NGO)这四种选项,这里我们使用Verilog模块作为顶层输入,所以选HDL。

(3)单击Next >进入下一步,弹出下图所示对话框。

图4 工程参数设置对话框

这里主要设置FPGA器件型号,速度等级,综合工具和仿真工具的选择,其余的一般默认即可。

器件大类(Product Category)中有ALL、民用级General Purpose、工业级Automotive、军用级Military/Hi-Reliability、航空防辐射级Radiation Tolerant五个选项,这里选择默认的ALL。

芯片型号选择笔者最近用到的spartan6 XC6SLX45T,封装FGG484,速度等级-2(数值越大,速度越快)。

综合工具选择ISE自带的XST,仿真工具也选择ISE自带的ISim。这里综合工具和仿真工具都可以选择第三方的工具,如常用的SynplifyPro和Modelsim。

(4)单击Next >按钮,然后单击Finish完成新工程的创建。

图5 新建工程概要

该窗口会显示新建工程的概要,核对无误后点击Finish完成工程创建。分页

2 设计输入

(1)在源代码窗口中单击右键,在弹出的菜单中选择New Source。

图6 新建源文件向导

在源文件类型中选择Verilog Module,输入文件名,其余使用软件默认即可。

(2)单击Next >按钮,弹出的窗口是模块创建向导界面,这里我们不使用该功能,直接单击单击Next >按钮到下一步,点击Finish完成新源文件的创建。

图7 模块创建向导界面

(3)ISE会自动打开源代码编辑界面,在该界面输入源代码,点击保存。

图8 源代码编辑界面

在该界面下,我们输入以下源代码。

这段代码的功能就是点亮一个LED灯,让它闪烁起来。选用板子上外接的一个33.3MHZ 的晶振,对其进行分频后达到人眼能够辨别的跳变速率。

3 功能仿真

(1)加入仿真激励源,也就是testbench,这里选择用verilog HDL编写。在源代码窗口中单击右键,在弹出的菜单中选择New Source,然后选择Verilog Test Fixture。

图9 源代码仿真关联选择界面

在该界面选择关联上test1源代码,这样关联之后生成出来的测试文件中会自动加入对源文件的例化代码,然后单击Next >,在弹出的报告界面确认信息无误后点击Finish。

在自动弹出的代码编辑界面输入以下测试激励代码,保存。

(2)行为级仿真。在主窗口左侧的Design窗口中选择Simulation→下拉栏中选行为级Behavioral→选中仿真激励文件→在Processes窗口就会出现ISim仿真软件了,第一个功能是行为级语法检查,在编写完testbench之后可以用于排查语法错误。双击第二个选项Simulate Behavior Model即可启动行为级仿真了。

图10 启动行为级仿真

(3)使用Sim仿真设计时序。

图11 ISim仿真界面

界面打开之后默认只跑1us,由于计数器计数较长,需要多运行一会才能看到led信号的跳变。点击操作栏上的按钮让它多运行一会就可以了,暂停时点击按钮。另外可将Objects窗口中的信号通过右键选择加入到仿真窗口中以方便观测。

分页

4 综合

(1)将Design窗口中的View项切换为Implementation,然后选中顶层文件,在下面的Processes窗口中就会出现综合实现的工具选项。这里双击Synthesize –XST就开始运行综合了。

图12 综合

综合过程中出现的各种警告或是错误报告会出现在Console窗口中,综合完成后状态显示为,双击Errors and Warnings中的就可以打开综合报告。

双击View RTL Schematic,打开设计综合后的RTL级视图。双击后会弹出下图所示的对话框,第一个是打开一个窗口文件管理向导,第二个是直接进入顶层设计的浏览。默认为第二个,点击OK。

图13 设置RTL查看设置

下图就是打开后能看到的顶层模块视图。可以看到最外层的输入和输出接口,一般复杂一点的设计就可以同过顶层视图来确定个模块之间的端口是否正确连接。

图14 顶层模块

双击顶层模块就可进入与之相应的模块内部RTL视图,在RTL级视图里,可以清楚地看到每一条语句是被综合工具综合成了什么逻辑器件。核对一下是否是自己预想的逻辑电路。

图15 RTL级视图

综合工具中还有一个View Technology Schematic选项,工艺级视图,比RTL级电路更详细,更接近综合后在芯片中要形成的实际电路和资源使用情况。可以看到各个逻辑部件内部的寄存器和门电路。

图16 工艺级视图

5 时序仿真

在主窗口左侧的Design窗口中选择Simulation→下拉栏中选Post-T ranslate→选中仿真激励文件→在Processes窗口就会出现ISim仿真软件了,双击Simulate Post-Translate Model即可启动时序仿真。

图17 时序仿真

时序仿真由于加入了门级延迟,所以比行为级仿真的运算量大,仿真起来速度也会慢很多。点击Run之后多等几分钟。

图18 时序仿真结果

ISim还能做映射(Post-Map)和布局布线(Post-Route)之后的仿真,时序能更贴近真实情况。一般在高速和时序非常复杂的设计中才会用到,使用方法与上面类似,这里不再赘述。

6 实现

(1)添加管脚约束。

在源代码窗口中单击右键,在弹出的菜单中选择New Source,然后选择

,输入文件名,点击下一步。在弹出的窗口确认信息无误后点击Finish。

软件会自动打开约束文件编辑窗口,输入以下代码,点击保存。

约束文件也可以通过选择操作窗口中的User Constraints→I/O Pin Planning启动PlanAhead来通过图形界面添加生成。

(2)运行实现。实现的步骤包括翻译,映射,布局布线三个步骤。

在Design窗口中选中顶层文件后双击操作窗口中的Implement Design,软件就会自动运行实现的三个步骤。

图19 运行实现工具

完成后状态显示为,各项操作过程中出现的错误和警告信息可以在Errors and Warnings窗口中选择查看。

分页

7 下载调试

双击操作窗口中的Configure Target Device启动下载程序。这个过程中会自动生成编程文件(Xilinx的FPGA配置文件为.bit后缀),并启动iMPACT软件。

在软件运行的过程中你可以连接好下JTAG载线,将板子通上电。

图20 选择配置目标器件

运行完成之后会自动弹出iMPACT软件界面,在该界面中双击Boundary Scan,然后单击工具栏上的图标,软件就会自动扫描JTAG链路上的目标器件。

图21 iMPACT界面

软件会自动打开配置文件选择窗口,将路径引导到工程目录,选择我们刚才生成的bit 文件。软件还会询问是否需要添加外挂的PROM芯片,这里选否。然后点击OK。如果硬件连接正确且工作正常,就能看到下图所示的界面。选中芯片后在点击右键,选择Program。

图22 下载界面

如果提示Programmed successfully就表明下载成功了,接下来你就能看到板子上的LED开始闪烁了。

8 总结

本篇通过一个简单的实例讲解了整个设计的流程,对初学者入门有一定的帮助,但这些操作只是涉及到了ISE强大功能中很小的一部分,更深入的功能有待于大家继续摸索。

drozer使用详解

Mercury(Android APP 应用安全评估) Mercury 是一款优秀的开源Android APP应用安全评估框架,它最赞的功能是可以动态的与android设备中的应用进行IPC(组件通信)交互。 一、安装与启动 1. 安装 (1)windows安装 第一步:下载Mercury 2.2.2 (Windows Installer) 第二步:在Android设备中安装agent.apk adb install agent.apk (2)*inux安装(Debian/Mac) apt-get install build-essential python-dev python-setuptools #以下步骤mac也适合 easy_install --allow-hosts https://www.360docs.net/doc/3210732238.html, protobuf==2.4.1 easy_install twisted==10.2.0 (为了支持Infrastructure模式) wget https://www.360docs.net/doc/3210732238.html,/assets/415/mercury-2.2.2.tar.gz tar zxvf mercury-2.2.2.tar.gz easy_install mercury-2.0.0-py2.7.egg 2. 启动 有三种方式 (1)USB方式的 第一步:在PC上使用adb进行端口转发,转发到Mercury使用的端口31415 adb forward tcp:31415 tcp:31415 第二步:在Android设备上开启Mercury Agent 选择embedded server-enable

数控车床由浅入深的宏程序实例

宏程序 裳华职业技术中专鲍新涛 宏程序概述 其实说起来宏就是用公式来加工零件的,比如说,如果没有宏的话,我们要逐点算出上的点,然后慢慢来用直线逼近,如果是个光洁度要求很高的工件的话,那么需要计算很多的点,可是应用了宏后,我们把椭圆公式输入到系统中然后我们给出Z坐标并且每次加10um那么宏就会自动算出X坐标并且进行切削,实际上宏在程序中主要起到的是运算作用。.宏一般分为A类宏和B类宏。 A类宏是以G65 Hxx P#xx Q#xx R#xx的格式输入的,而B类宏程序 则是以直接的公式和语言输入的和C语言很相似在0i系统中应用比较广。 宏程序的作用 数控系统为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。 宏程序指令适合抛物线、椭圆、双曲线等没有插补指令的曲线编程;适合图形一样,只是尺寸不同的系列零件的编程;适合工艺路径一样,只是位置参数不同的系列零件的编程。较大地简化编程;扩展应用范围。 宏的分类 B类宏 由于现在B类宏程序的大量使用,很多书都进行了介绍这里我就不再重复了,但在一些老系统中,比如(FANUC)OTD系统中由于它的MDI键盘上没有公式符号,连最简单的等于号都没有,为此如果应用B类宏程序的话就只能在计算机上编好

再通过RSN-32接口传输的数控系统中,可是如果我们没有PC机和RSN-32电缆的话怎么办呢,那么只有通过A类宏程序来进行宏程序编制了,下面我介绍一下A 类宏的引用; A类宏 A类宏是用G65 Hxx P#xx Q#xx R#xx或G65 Hxx P#xx Qxx Rxx格式输入的,xx 的意思就是数值,是以um级的量输入的,比如你输入100那就是0.1MM.#xx就是号,变量号就是把数值代入到一个固定的地址中,固定的地址就是变量,一般OTD 系统中有#0~#100~#149~#500~#531.关闭电源时变量#100~#149被初始化成“空”,而变量#500~#531保持数据.我们如果说#100=30那么现在#100地址内的数据就是30了,就是这么简单.好现在我来说一下H代码,大家可以看到A类宏的标准格式中#xx和xx都是数值,而G65表示使用A类宏,那么这个H就是要表示各个数值和变量号内的数值或者各个变量号内的数值与其他变量号内的数值之间要进行一个什么运算,可以说你了解了H代码A类宏程序你基本就可以应用了,好,现在说一下H代码的各个含义: 应用 以下都以#100和#101和#102,及数值10和20做为例子,应用的时候别把他们当格式就行, 基本指令 H01赋值;格式:G65H01P#101Q#102:把#102内的数值赋予到#101中 G65H01P#101Q#10:把#10赋予到#101中 H02加指令;格式G65 H02 P#101 Q#102 R#103,把#102的数值加上#103的数值赋予#101

zheng-环境搭建及系统部署文档20170213(三版)

1Een 项目描述 基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构:内容管理系统(门户、博客、论坛、问答等)、统一支付中心(微信、支付宝、在线网银等)、用户权限管理系统(RBAC细粒度用户权限、统一后台、单点登录、会话管理)、微信管理系统、第三方登录系统、会员系统、存储系统 https://www.360docs.net/doc/3210732238.html,/zhengAdmin/src/ 2项目组织结构

3项目模块图 4项目使用到的技术4.1后端技术 Spring Framework SpringMVC: MVC框架

Spring secutity|Shiro: 安全框架 Spring session: 分布式Session管理MyBatis: ORM框架 MyBatis Generator: 代码生成 Druid: 数据库连接池 Jsp|Velocity|Thymeleaf: 模板引擎ZooKeeper: 协调服务 Dubbo: 分布式服务框架 TBSchedule|elastic-job: 分布式调度框架Redis: 分布式缓存数据库 Quartz: 作业调度框架 Ehcache: 缓存框架 ActiveMQ: 消息队列 Solr|Elasticsearch: 分布式全文搜索引擎FastDFS: 分布式文件系统 Log4J: 日志管理 Swagger2: 接口文档 sequence: 分布式高效ID生产 https://www.360docs.net/doc/3210732238.html,/yu120/sequence AliOSS|Qiniu: 云存储 Protobuf|json: 数据传输 Jenkins: 持续集成工具 Maven|Gradle: 项目构建管理

图文详细教程教你如何用Cool_Edit_Pro_2_1录音1

首先,我们要做好准备工作。把你的耳机作为监听音箱(此步的意义就是说用耳机来听伴奏音乐,否则在你录音时会录入音乐和人声的混合声音),把你的mic调试好。然后下载我们要用到的工具COOL EDIT PRO 2.1及其插件。 Cool Edit Pro 2.1 下载 1、打开cooledit pro 2.0后,会自动建立一个新的工程。界面如下: 大家看到,我标注的红色1是多轨与单轨切换的按钮。红色标注2是表示你在录音时要点亮“R”“S”“M”中的“R”,这表示此轨是在录音范围之中。点击录音键(红色标注3)就可以开始录下你的声音了。 在录音之前还需调整你的“声音与音频属性”,如图:

需要把录音项打勾,在MIC一栏中选中,其它的不要选择,因为我们要录的只是自己要歌唱的声音。 2、在第三轨处点亮R,点击录音键,不要出声,先录下一段空白的噪音文件,不需要很长,录制完后双击进入单轨模式,选择效果-噪音消除-降噪器,选择噪音采样,点击“关闭”。回到多轨模式下删除此轨。

3、右键单击第一轨,插入一个音频文件,注意,这个音频文件就是你的音乐伴奏文件,可以是mp3,也可以是wav等其它音乐文件的格式。

4、在第二轨处,把R点亮,点击下面的红色录音键就可以开始跟唱了。不要忘了准备歌词和熟悉歌曲的旋律,要不然录出来的东西可是……嘿嘿 5、录制完成之后,你可以听听你录下的声音是不是干巴巴的?很难听吧?呵呵,都这样,没有加任何效果嘛。好,现在我们来给你的声音进行一下润色吧。右键点击你录制声音所在的轨道,点击波形编辑进入单轨模式。如图:

6、我们录制的声音首先要进行降噪,虽然录制环境要保持绝对的安静,但还是会有很多杂音的。点击效果中的降噪器,我们在上面已经进行过了环境的噪音采样,此时只需点击“确定”,降噪器就会自动消除你录制声音中的环境噪音,你也可以打开“预览”自己拖动直线来进行调整直到满意为止。加一句,过多的降噪会对声音有一定的损失。

GoogleProtoBuf开发者指南

ProtoBuf开发指南 - 非官方不完整版 这个文档用于指导开发的,属于非官方发布版本进行选译的,并不完整。供参考使用。 1 概览 欢迎来到protocol buffer的开发者指南文档,一种语言无关、平台无关、扩展性好的用于通信协议、数据存储的结构化数据串行化方法。 本文档面向希望使用protocol buffer的Java、C++或Python开发者。这个概览介绍了protocol buffer,并告诉你如何开始,你随后可以跟随编程指导 ( https://www.360docs.net/doc/3210732238.html,/apis/protocolbuffers/docs/tutorials.html )深入了解protocol buffer编码方式 ( https://www.360docs.net/doc/3210732238.html,/apis/protocolbuffers/docs/encoding.html)。API 参考文档 ( https://www.360docs.net/doc/3210732238.html,/apis/protocolbuffers/docs/reference/overview .html )同样也是提供了这三种编程语言的版本,不够协议语言 ( https://www.360docs.net/doc/3210732238.html,/apis/protocolbuffers/docs/proto.html )和样式( https://www.360docs.net/doc/3210732238.html,/apis/protocolbuffers/docs/style.html )指导都是编写 .proto 文件。 1.1 什么是protocol buffer ProtocolBuffer是用于结构化数据串行化的灵活、高效、自动的方法,有如XML,不过它更小、更快、也更简单。你可以定义自己的数据结构,然后使用代码生成器生成的代码来读写这个数据结构。你甚至可以在无需重新部署程序的情况下更新数据结构。 1.2 他们如何工作 你首先需要在一个 .proto 文件中定义你需要做串行化的数据结构信息。每个ProtocolBuffer信息是一小段逻辑记录,包含一系列的键值对。这里有个非常简单的 .proto 文件定义了个人信息: message Person { required string name=1; required int32 id=2; optional string email=3; enum PhoneType {

cooledit使用教程

C o o l E d i t P r o2.0录音图解教程 特别感谢网友川江魅影和戈壁提供指导整理/飞虹C o o l E d i t P r o2.0录音图解教程 首先,我们要做好准备工作。把你的耳机作为监听音箱(此步的意义就是说用耳机来 听伴奏音乐,否则在你录音时会录入音乐和人声的混合声音),把你的m i c调试好。然后下 载我们要用到的工具C O O L E D I T P R O2.0及其插件。 c o o l e d i t p r o2.0下载(带汉化 注册机) c o o l e d i t2.0汉化 U l t r a f u n k插件下载 B B E S o n i c M a x i m i z e r插件下载b b e序列号:S M V100W1002507 W a v e插件 插件4 插件5 1、安装好c o o l e d i t p r o2.0后,再把插件安装到安装目录下的子目录中,新建一个名曰“D X”的文件夹, 把所有的插件都安装释放到这里。 2、打开c o o l e d i t p r o2.0后,会自动建立一个新的工程。界面如下: 大家看到,我标注的红色1是多轨与单轨切换的按钮。红色标注2是表示你在录音时要点 亮“R”“S”“M”中的“R”,这表示此轨是在录音范围之中。点击录音键(红色标注3)就可以开 始录下你的声音了。 在录音之前还需调整你的“声音与音频属性”,如图:

需要把录音项打勾,在M I C一栏中选中,其它的不要选择,因为我们要录的只是自己要歌 唱的声音。 3、在第三轨处点亮R,点击录音键,不要出声,先录下一段空白的噪音文件,不需要很 长,录制完后双击进入单轨模式,选择效果-噪音消除-降噪器,选择噪音采样,点击“关 闭”。回到多轨模式下删除此轨。 以是m p3,也可以是w a v等其它音乐文件的格式。

Ubuntu14.04的caffe编译及安装

Caffe Caffe CaffecuDNNAlexNetK40 1.17ms. Caffe BSD-2

sudo apt-get install build-essential # sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libop encv-dev libhdf5-serial-dev protobuf-com sudo apt-get install --no-install-recommends libboost-all-dev CUDA7.5 Nvidia Ubuntudeb , sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb sudo apt-get update

sudo apt-get install cuda sudo ldconfig /usr/local/cuda/lib64 660 sudo apt-get install nvidia-cuda-toolkit sudo apt-get install nvidia-352 sudo reboot Atlas sudo apt-get install libatlas-base-dev pythonpipeasy_install wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py sudo python ez_setup.py --insecure wget https://bootstrap.pypa.io/get-pip.py sudo python get-pip.py python sudo apt-get install libblas-dev liblapack-dev libatlas-base-dev gfortr an python-numpy

Cool Edit 教程--Cool Edit 的安装及参数设置

Cool Edit 教程--Cool Edit 的安装及参数设置 首先,我们要做好准备工作。把你的耳机作为监听音箱(此步的意义就是说用耳机来听伴奏音乐,否则在你录音时会录入音乐和人声的混合声音),把你的mic调试好。 然后下载我们要用到的工具COOL EDIT PRO 2.0及其插件。现在很多的音乐制作人都在使用这个超级工具。闲话少说,与本次介绍给大家无关的不提,我们现在开始。 1、安装好cooledit pro 2.0后,再把插件安装到安装目录下的子目录中,新建一个名曰“DX”的文件夹,把所有的插件都安装释放到这里。 2、打开cooledit pro 2.0后,会自动建立一个新的工程。界面如下: 大家看到,标注的红色1是多轨与单轨切换的按钮。红色标注2是表示你在录音时要点亮“R”“S”“M”中的“R”,这表示此轨是在录音范围之中。点击录音键(红色标注3)就可以开始录下你的声音了。 在录音之前还需调整你的“声音与音频属性”,双击电脑桌面右下角的音量图标,打开后点选项中的属性如图:

需要把录音项打勾,在MIC一栏中选中,其它的不要选择,因为我们要录的只是自己要歌唱的声音。 3、在第三轨处点亮R,点击录音键,不要出声,先录下一段空白的噪音文件,不需要很长,录制完后双击进入单轨模式,选择效果-噪音消除-降噪器,选择噪音采样,点击“关闭”。回到多轨模式下删除此轨。另,也可以在单轨下截取音轨空白的部分获取噪音进行降噪。

4、右键单击第一轨,插入一个音频文件,注意,这个音频文件就是你的音乐伴奏文件, 可以是mp3,也可以是wav等其它音乐文件的格式。

5、在第二轨处,把R点亮,点击下面的红色录音键就可以开始跟唱了。不要忘了准备歌词和熟悉歌曲的旋律,要不然录出来的东西可是……嘿嘿 6、录制完成之后,你可以听听你录下的声音是不是干巴巴的?很难听吧?呵呵,都这样,没有加任何效果嘛。好,现在我们来给你的声音进行一下润色吧。右键点击你录制声音所在的轨道,点击波形编辑进入单轨模式。如图

CoolEdit2.0使用教程

Cool Edit Pro v2.0实验手册 实验一安装注册 Cool Edit是一款功能强大、效果出色的多轨录音和音频处理软件。它是一个非常出色的数字音乐编辑器和MP3制作软件。不少人把Cool Edit形容为音频“绘画”程序。你可以用声音来“绘”制:音调、歌曲的一部分、声音、弦乐、颤音、噪音或是调整静音。而且它还提供有多种特效为你的作品增色:放大、降低噪音、压缩、扩展、回声、失真、延迟等。你可以同时处理多个文件,轻松地在几个文件中进行剪切、粘贴、合并、重叠声音操作。使用它可以生成的声音有:噪音、低音、静音、电话信号等。该软件还包含有CD播放器。其他功能包括:支持可选的插件;崩溃恢复;支持多文件;自动静音检测和删除;自动节拍查找;录制等。另外,它还可以在AIF、AU、MP3、Raw PCM、SAM、VOC、VOX、WA V 等文件格式之间进行转换,并且能够保存为RealAudio格式。 实验目的 了解Cool Edit的功能 掌握Cool Edit2.0及相关插件的安装过程 实验内容 1.1安装 步骤一:运行cep_v2.0 setup.exe安装Cool Edit Pro v2.0。勾选“同意许可协议”后点击“Continue”继续,来到友好欢迎界面(图1.2)。 图1.1 图1.2 步骤二:安装路径,默认为:C:\Program Files\coolpro2,可以通过“Browse”另择安装

路径。这个安装路径很重要,在后面的注册、汉化操作中都会涉及到。 图1.3 图1.4 步骤三:路径设置完毕,在图1.5中可以看到我设置的路径为:D:\Program Files\coolpro2。点击“Next”进入下一步操作(图1.6)。这里是要我们选择将来软件关联的音频格式,默认中已经准备了很多,我们只需点击“Next”即可。 图1.5 图1.6 步骤四:准备安装。当我们看到图1.7所示界面,表示前期工作已经结束,可以安装了。 图1.7 图1.8

数控铣宏程序实例(DOC)

数控铣宏程序实例(DOC)

数控铣宏程序实例 §4.1 椭圆加工(编程思路:以一小段直线代替曲线)例1:整椭圆轨迹线加工(假定加工深度为2mm) 方法一:已知椭圆的参数方X=acosθ Y=bsinθ变量数学表达式 设定θ= #1(0°~ 360°) 那么 X= #2 = acos[#1] Y= #3= bsin[#1] 程序 O0001; S1000 M03; G90 G54 G00 Z100; G00 Xa Y0; G00 Z3; G01 Z-2 F100; #1=0; N1 #2=a*cos[#1]; #3=b*sin[#1]; G01 X#2 Y#3 F300; #1=#1+1; IF[#1LE360]GOT01; GOO Z50; M30;

例2:斜椭圆且椭心不在原点的轨迹线加工(假设加工深度为2mm) 椭圆心不在原点的参数方程 X=a*COS[#1]+ M Y=b*SIN[#1]+ N 变量数学表达式 设定θ=#1; (0°~360°) 那么X=#2=a*COS[#1]+ M Y=#3=b*SIN[#1]+ N 因为此椭圆绕(M ,N)旋转角度为A 可运用坐标旋转指令G68 格式 G68 X - Y - R - X,Y:旋转中心坐标; R: 旋转角度 程序 O0002; S1000 M03; G90 G54 G00 Z100; GOO Xa+M YN; GOO Z3; G68 XM YN R45; #1=0; N99 #2=a*COS[#1]+M; #3=b*SIN[#1]+N; GO1 X#2 Y#3 F300; G01 Z-2 F100; #1=#1+1; IF[#1LE360]GOTO99; G69 ; GOO Z100; M30;

comake使用详解

Comake2使用详解 1、适用用户范围: 第一次使用comake2工具 使用comake2搭建环境:这时用户不需要关心COMAKE文件细节,和第一次使用comake2工具时的情形差不多,第一次使用comake2工具初始化环境 $mkdir --parent ps/se/ac/make $cd ps/se/ac/make $comake2 -S $comake2 -UB comake2 -S //初始化COMAKE文件 comake2 -S表示从平台最新基线版本获取依赖列表;comake2 -S -r 1.0.1.0表示从平台1.0.1.0版本获取依赖列表友情提示:如果你的代码库里已有COMAKE文件,可跳过这一步;如果你的模块路径是ps/se/ac/make,请cd ps/se/ac/make再执行comake2 -S命令 comake2 -UB //下载并编译依赖代码 2、comake2命令 $ comake2 -h comake[com make]能够自动帮助用户搭建环境,并且生成Makefile工具. 程序会读取目录下面的COMAKE文件,产生Makefile和环境.用户需要提供这个COMAKE文件. 参数: -h --help 查看帮助 -D --debug 开启debug选项[默认不打开].-D -D可以查看更多调试信息. -S --scratch 创建一个默认的COMAKE文件 -r --revision 从平台检出模块cvspath指定的TAG对应的依赖列表,配合-S使用,如-S -r 1.0.0.0 -E --export-configs 导出模块的4位版本依赖,存放在COMAKE.CONFIGS下面.比如-E public/ub@1.0.0.0 -W --watch-configs 查看本地依赖模块.-W -W可以查看模块引入来源.-W -W -W可以查看依赖模块的依赖. -I --import-files 在解释COMAKE文件之前导入模块 -C --change directory 切换到directory下面执行[默认当前目录] -Q --quiet 安静模式[默认不打开] -U --update-configs 更新环境 -B --build-configs 构建环境 -F --force 构建环境时强制进行[默认不进行] -e --export-local-configs 导出本地环境到CONFIGS.SCM文件 -f --scmfile= 重现编译环境 -d --devdiff 存在本地修改的共同开发依赖列表(多模块共同开发时适用) -J --make-thread-number= 如果模块使用COMAKE生成的Makefile的话,编译线程数[默认是4] -j --modules-thread-number= 并发下载、编译模块的线程数[默认是1] -K --keep-going 构建/更新环境中途出错的话,忽略错误继续[已废弃] -P --pretreatment 生成Makefile时不进行预处理[默认进行预处理] -O --quot-all-deps 生成Makefile时引用所有头文件依赖[默认过滤目录外依赖]

录音软件cooledit2.1详细使用方法

一、软件简介: CoolEdit PRO 2.1 破解版(功能强大的多轨录音软件)非常出色的数字音乐编辑器和MP3制作软件。不少人把Cool Edit形容为音频“绘画”程序。你可以用声音来“绘”制:音调、歌曲的一部分、声音、弦乐、颤音、噪音或是调整静音。而且它还提供有多种特效为你的作品增色:放大、降低噪音、压缩、扩展、回声、失真、延迟等。你可以同时处理多个文件,轻松地在几个文件中进行剪切、粘贴、合并、重叠声音操作。使用它可以生成的声音有:噪音、低音、静音、电话信号等。该软件还包含有CD播放器。其他功能包括:支持可选的插件;崩溃恢复;支持多文件;自动静音检测和删除;自动节拍查找;录制等。另外,它还可以在AIF、AU、MP3、Raw PCM、SAM、VOC、VOX、WAV 等文件格式之间进行转换,并且能够保存为RealAudio格式。 二、使用说明: 1.运行cep_v 2.0 setup.exe安装Cool Edit Pro v2.0! 一般都会安装到默认的路径 2.运行破解注册程序 cep2reg.exe程序注册,输入注册码: Name: mydaj Code: 200-00-NKLYUBNZ 3.运行cep_v2.1 setup.exe程序安装Cool Edit Pro v2.1! 4.运行汉化程序 Cool2chinese 汉化包安装到上面安装程序的路径下 5.下面是三个效果插件,这些效果插件都有破解和注册码。按默认路径就可以了。请一个一个安装: BBE Sonic Maximizer (serial: SMV100W1002507) ultrafunk2 wave3.0 三、系统介绍一下用Cooledit pro 2.1录制自唱歌曲的一个全过程,希望对喜欢唱歌,想一展歌喉的朋友有所帮助。 (一)录制原声 录音是所有后期制作加工的基础,这个环节出问题,是无法靠后期加工来补救的,所以,如果是原始的录音有较大问题,就重新录吧。 1、打开CE进入多音轨界面右击音轨1空白处,插入你所要录制歌曲的mp3/wma伴奏文件(图1)。

新代宏程序实例

新代宏程序实例文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)

1、R E P E A T直到型循环REPEAT <循环体> UNTIL <条件表达式> END_REPEAT; 说明:REPEAT直到型循环控制,先执行循环体,后判断条件表达式,当条件满足时退出循环。 例如: % @MACRO ,为了;?倾向于;?关于;?当作; conj.因为,由于;? FOR <循环变量> := <表达式1> TO <表达式2> [ BY <表达式3>] DO <循环体> END_FOR; 说明:FOR循环控制,式中各参数意义如下 循环变量——控制循环次数的变量; 表达式1——循环计数的起始值,可为整数或表达式; 表达式2——循环计数的终止值,可为整数或表达式; 表达式3——循环计数每次的累加值,可为整数或表达式; 循环体——循环每次执行内容; FOR循环执行过程为:先给循环变量赋起始值,然后判断循环变量是否为终止值,当循环变量已为终止值时退出循环,否则执行循环体,再对循环变量加上每次累加值, 4、无条件转移

GOTO转移语句 语法: GOTO n; 说明:无条件地跳到指定的n行号执行,其中n可为整数或表达式。GOTO常和IF语句搭配使用,那就是说当程序检查到某个条件满足时用GOTO语句去进一步处理,但应尽量少用该语句以提高程序可读性。 范例: % @MACRO Z10.; … N100 G01 X30. Z30.; … M02; EXIT循环中断语句 语法:EXIT; 说明:循环中断,跳离循环控制;用在循环控制中,通常EXIT都和IF 语句搭配使用,当某个条件满足后就跳离循环。请参考WHILE范例。

Protobuf编码详解

prtotocol buffer是google于2008年开源的一款非常优秀的序列化反序列化工具,它最突出的特点是轻便简介,而且有很多语言的接口(官方的支持C++,Java,Python,C,以及第三方的Erlang, Perl等)。本文从protobuf如何将特定结构体序列化为二进制流的角度,看看为什么Protobuf如此之快。 一,示例 从例子入手是学习一门新工具的最佳方法。下面我们通过一个简单的例子看看我们如何用protobuf 的C++接口序列化反序列化一个结构体。 1,编辑您将要序列化的结构体描述文件Hello.proto 每个结构体必须用message来描述,其中的每个字段的修饰符有required, repeated和optional 三种,required表示该字段是必须的,repeated表示该字段可以重复出现,它描述的字段可以看做C语言中的数组,optional表示该字段可有可无。 同时,必须人为地为每个字段赋予一个标号field_number,如上图中的1,2,3,4所示。更详细的proto文件的编写规则见这里。 2,用protoc工具“编译”Hello.proto protoc工具使用的一般格式是: protoc -I=$SRC_DIR --cpp_out=$DST_DIR $SRC_DIR/xxx.proto 其中SRC_DIR是proto文件所在的目录,DST_DIR是编译proto文件后生成的结构体处理文件的目录 之后会生成对结构体Hello.proto中描述的各字段做序列化反序列化的类 3, 编写序列化进程https://www.360docs.net/doc/3210732238.html,

我们用set方法为结构体中的每个成员赋值,然后调用SerializeToOstream将结构体序列化到文件log中。 并编译它: 4,编写反序列化进程https://www.360docs.net/doc/3210732238.html, 用ParseFromIstream将文件中的内容序列化到类Hello的对象msg中。 并编译它: , 5,做序列化和反序列化操作 上面只是一个简单的例子,并没有对protobuf的性能做测试,protobuf的性能测试详见这里。

Ubuntu下安装Caffe

Ubuntu下安装Caffe 安装需要的软件: 1. Ubuntu14.0.4 2. cuda-repo-ubuntu1504-7-5-local_7.5-18_amd64 3. caffe-master 安装Ubuntu的过程在这里不做介绍。系统安装好了之后,执行下面的操作。 在线安装的步骤,在此之前将更新源换成163的,下载速度会快很多: 1. sudo apt-get update 2. sudo apt-get upgrade 以上更新系统相关软件 3. sudo apt-get install build-essential 4. sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev 5. sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler 6. sudo apt-get install libatlas-base-dev python-dev vim 以上为在线安装的依赖项需要按顺序执行 7. 切换到cuda安装包的目录下,执行sudo dpkg -i cuda-repo-ubuntu1504-7-5- local_7.5-18_amd64 8. sudo apt-get update 9. sudo apt-get install -y cuda 以上为安装CUDA驱动。(Nvidia驱动在这个过程也会自动装好) 10. vim ~/.bashrc 11. 按i进入编辑状态,将光标移到最下面一行。输入export PATH=/usr/local/cuda- 7.5/bin:$PATH 12. 输入export LD_LIBRARY_PATH=/usr/local/cuda- 7.5/lib64:$LD_LIBRARY_PATH,按:wq保存并退出 13. source ~/.bashrc 以上为配置环境变量 14. 将下载好的caffe源文件解压缩,即caffe-master然后切到那个目录中执行cp Makefile.config.example Makefile.config 15. vim Makefile.config 16. 按i进入编辑状态,修改:CUDA_DIR :=/usr/local/cuda-7.5 17. 如果使用了MATLAB或者Python需要按照Makefile.config文件中的提示在 Makefile.config进行相应的路径修改即可。 以上为配置Caffe相关路径 18. make all 19. make test 20. make runtest

cooleditpro音频基本编辑方法

3、单轨音频基本编辑方法 1. 录音 Cool Edit Pro可以录入多种音源,如:话筒、录音机、CD播放机等,将这些设备与声卡连接好,就可以准备录音了。录音的步骤如下: (1)将话筒插入电脑声卡的麦克风插孔,开启话筒电源。 (2)启动Cool Edit Pro后,切换到波形单轨编辑窗口。 (3)选择菜单[文件][新建],出现“新建波形”对话框,选择适当的采样率,声道数,采样精度,如图4-9所示。 (4)按下操作区的“”按钮,开始录音。如图4-10所示。 图4-9 新建波形图4-10 录音按钮 (5)单击操作区左上角的“”按钮就可以停止录音。 (6)通过单击“”按钮进行试听。 (7)通过菜单[文件][另存为]进行保存,保存时可以选择不同的文件类型,如图4-11所示。

图4-11 录音文件保存 2. 摘录 Cool Edit Pro可以从CD或VCD中摘录声音,现以CD为例,步骤如下:(1)将CD放入光驱中,选择菜单[文件]|[从CD中提取音频]。 (2)在[音轨]下拉文本框中选择要提取的音轨,单击[确定],如图4-12所示。 图4-12 摘录 (3)通过菜单[文件]|[另存为]选择需要的类型进行保存。 3. 其他操作

其他的操作如剪切、复制、粘贴等功能和一般的应用软件很相似。在波形窗口左右声道的交界处拖动鼠标,选中要处理的波形区域,单击右键弹出快捷菜单就可以选择剪切或复制命令,在需要插入波形的地方同样单击右键弹出快捷菜单就可以选择粘贴命令。如果要选中右声道中的波形,则可以将光标移到波形窗口下方边界时,光标显示“R”的时候拖动鼠标,如图4-13所示。同样的,如果要选中左声道中的波形,则可以将光标移到波形窗口上 图4-13 选择右声道中的波形 方边界时,光标显示“L”的时候拖动鼠标。 4、单轨音频效果处理 1. 音量调整 Cool Edit Pro可以在保证不出现声音失真的前提下,对声音进行调整。 操作步骤如下: (1)打开要处理的音频文件。 (2)选择菜单[效果]|[波形振幅]|[渐变]。

EXCEL宏编程实例.doc

Excel 宏编程举例说明 学习宏编程,需要VB基础,如果一点VB基础和面向对象的概念,建议先去补补VB,不然即使自认为学好了也只能拿着高射炮打蚊子! 一)、宏学习 首先需要明确的是,本文不可能教会您关于宏的所有内容。您需要学会利用"录制宏"的方法来学习宏:点击Excel"工具"下拉菜单中"宏"下?quot;录制新宏",此后可象平时一样进行有关操作,待完成后停止录制。然后再点击"工具"下拉菜单中"宏"下"宏"的"编辑"选项即可打开刚才所录制的宏的Visual Basic源程序,并且可以在此时的"帮助"下拉菜单中获得有关的编程帮助。对录制宏进行修改不仅可以学习宏的使用,还能大大简化宏的编写。 二)、基本概念 为了学习Excel中的宏,我们需要先了解以下一些基本概念。 1、工作簿:Workbooks、Workbook、ActiveWorkbook、ThisWorkbook Workbooks集合包含Excel中所有当前打开的Excel工作簿,亦即所有打开的Excel文件;Workbook对应Workbooks中的成员,即其中的Excel文件;ActiveWorkbook代表当前处于活动状态的工作簿,即当前显示的Excel文件;ThisWorkbook代表其中有Visual Basic代码正在运行的工作簿。 在具体使用中可用Workbooks(index)来引用Workbook对象,其中index为工作簿名称或编号;如Workbooks(1)、Workbooks("年度报表.xls")。而编号按照创建或打开工作簿的顺序来确定,第一个打开的工作簿编号为1,第二个打开的工作簿为2……。 2、工作表:Worksheets、Worksheet、ActiveSheet Worksheets集合包含工作簿中所有的工作表,即一个Excel文件中的所有数据表页;而Worksheet则代表其中的一个工作表;ActiveSheet代表当前处于的活动状态工作表,即当前显示的一个工作表。 可用Worksheets(index)来引用Worksheet对象,其中index为工作表名称或索引号;如Worksheets(1)、Worksheets("第一季度数据")。工作表索引号表明该工作表在工作表标签中的位置:第一个(最左边的)工作表的索引号为1,最后一个(最右边的)为Worksheets.Count。需要注意的是:在使用过程中Excel会自动重排工作表索引号,保持按照其在工作表标签中的从左至右排列,工作表的索引号递增。因此,由于可能进行的工作表添加或删除,工作表索引号不一定始终保持不变。3、图表:Chart 、Charts、ChartObject、ChartObjects、ActiveChart Chart代表工作簿中的图表。该图表既可为嵌入式图表(包含在ChartObject中),也可为一个分开的(单独的)图表工作表。 Charts代表指定工作簿或活动工作簿中所有图表工作表的集合,但不包括嵌入式在工作表或对话框编辑表中的图表。使用Charts(index) 可引用单个Chart图表,其中index是该图表工作表的索引号或名称;如Charts(1)、Charts("销售图表")。图表工作表的索引号表示图表工作表在工作簿的工作表标签栏上的位置。Charts(1)是工作簿中第一个(最左边的)图表工作表;Charts(Charts.Count)为最后一个(最右边的)图表工作表。 ChartObject代表工作表中的嵌入式图表,其作用是作为Chart对象的容器。利用ChartObject 可以控制工作表上嵌入式图表的外观和尺寸。 ChartObjects代表指定的图表工作表、对话框编辑表或工作表上所有嵌入式图表的集合。可由ChartObjects(index)引用单个ChartObject,其中index为嵌入式图表的编号或名称。如

Unity3D客户端和Java服务端使用Protobuf

Unity3D客户端和Java服务端使用Protobuf 本文测试环境: 系统:WINDOWS 7(第3、6步)、OS X 10.9(第4步)软件:VS 2012(第3、6步)、Eclipse(第5、6步) 硬件:iPad 2(第4步)、Macbook Pro Mid 2012(第4步)文章目录: 1、关于Protobuf的C#实现 2、为什么有些Protobuf发布到iOS就用不了,甚至有些在PC都用不了? 3、手动处理C#版本的Protobuf 3.1、创建一个C#工程,先手动创建每一个要通过Protobuf序列化或反序列化的数据模型类,然后导出dll 3.2、创建一个用于序列化的C#工程,然后运行生成dll 3.3、将上面两个工程生成的dll拖到unity中 4、在Unity中反序列化Protobuf 5、服务端Java也用Protobuf 6、太烦了?!客户端也要自动处理Protobuf1、关于Protobuf 的C#实现 首先,U3D里面Protobuf使用的是C#的实现,那么目前有几个可选的C#实现:

C#: https://www.360docs.net/doc/3210732238.html,/p/protobuf-csharp-port C#: https://www.360docs.net/doc/3210732238.html,/p/protosharp/ C#: https://https://www.360docs.net/doc/3210732238.html,/protobuf/ C#/.NET/WCF/VB: https://www.360docs.net/doc/3210732238.html,/p/protobuf-net/我这里选用的是https://www.360docs.net/doc/3210732238.html,/p/protobuf-net/(你可以在 https://https://www.360docs.net/doc/3210732238.html,/p/protobuf-net/downloads/list 这里下载到他的代码和工具),它比较好的一点是,提供了各种平台的支持,解压后在“Full”目录中可以看到各个平台的支持看到里面的unity了吗,它里面的protobuf-net.dll将是我们准备用到的。2、为什么有些Protobuf发布到iOS就用不了,甚至有些在PC都用不了? a、Protobuf使用了JIT,即在运行时动态编译,而这个特性在Unity发布到iOS时候是不支持的。因此,会导致你在PC 上可以正常运行,发布到iOS就有问题。 b、Protobuf是基于.net 2.0以上框架写的,而Unity仅支持.net 2.0,或者有些使用2.0中比较多的特性,而你在Unity 中发布设置了.net 2.0的子集。后者你只需要在Player setting中修改设置就可以了。 上面两项也可适用于其它第三方类库,如果你自己下载了一个在PC上或C#里面能正常使用的类库,在U3D里面就不能用了,那么请检查是否是上面两条原因导致的。3、手动

Cooledit2.1(中文版)使用教程

录制原声 录音是所有后期制作加工的基础,这个环节出问题,是无法靠后期加工来补救的,所以,如果是原始的录音有较大问题,就重新录吧。 1、打开CE进入多音轨界面右击音轨1空白处,插入你所要录制歌曲的mp3/wma 伴奏文件(图1)。 2、选择将你的人声录在音轨2,按下“R”按钮。(图2)

3、按下左下方的红色录音键,跟随伴奏音乐开始演唱和录制。(图3)

4、录音完毕后,可点左下方播音键进行试听,看有无严重的出错,是否要重新录制(图4)

5、双击音轨2进入波形編辑界面(图5),将你录制的原始人声文件保存为mp3pro格式(图6图7),以前的介绍中是让大家存为wav格式,其实wma/mp3也是绝对可以的,并且可以节省大量空间。

(注)需要先说明一下的是:录制时要关闭音箱,通过耳机来听伴奏,跟着伴奏进行演唱和录音,录制前,一定要调节好你的总音量及麦克音量,这点至关重要!麦克的音量最好不要超过总音量大小,略小一些为佳,因为如果麦克音量过大,会导致录出的波形成了方波,这种波形的声音是失真的,这样的波形也是无用的,无论你水平多么高超,也不可能处理出令人满意的结果的。 另:如果你的麦克总是录入从耳机中传出的伴奏音乐的声音,建议你用普通的大话筒,只要加一个大转小的接头即可直接在电脑上使用,你会发现录出的效果要干净的多。 降噪是至关重要的一步,做的好有利于下面进一步美化你的声音,做不好就会导致声音失真,彻底破坏原声。单单这一步就足以独辟篇幅来专门讲解,大家清楚这一点就行了。 1.点击左下方的波形水平放大按钮(带+号的两个分别为水平放大和垂直放大)放大波形,以找出一段适合用来作噪声采样波形(图8)。

相关文档
最新文档