C++学院讲义
本文档是根据传智播客C++学院视频教程,进行学习整理。吴英强专注于C/C++ Android, Linux,ARM技术博客http://blog.csdn.net/waldmer文档声明:版本说明:目录:0723.32位与64位调戏窗口程序.….2229993数据分离算法内存检索二分查找法myc90724堆栈简介、内存完成篇.静态区、内存完成篇…-25-多线程-280725-32-内存补码分析∴32补码原码实战.-33-打印整数二进制数据.34-静态库说明·利用 detours劫持-36072641cpplDe.................41级指针41指针数组函数指针/函数指针数组二级指针…0728数组与指针51数组与指针2··…··+·4······;.···44····+······-54-内存分配数据结构数组接口与封装∴,-610729.74字符串查找74语音识别.4Const关键字宇符串应用48内存分配以及处理海量数据.……………850730-89-网站以及后门.中,垂结构体对齐、结构体面试分析.-90-深拷贝与浅拷贝队列92字符串封装…-950801-105欢迎交流,互相学习。吴英强专注于C/C++ Android, Linux,ARM技术博客http://blog.csdn.net/waldmer重定向以及文件扫描.∴-105-进制加密解密-108简单加密按照密码加密…118动态库与静态斥-1220802,……,………125链式栈…链表队列以及优先队列.129-封装链表库135-0804-142C语言和设计模式(继承、封装、多态)-142-世界五百强真题训练∴146-0805...:..146面试题1-100146语音识别控制QQ.………………-146语音控制游戏-157-0813-164-C与CPP不同以及命名空间简介-164-函数重载与函数默认参数-166-泛型auto-168-Newdelete-1690814-173引用高级、引用高级增加.auto自动变量自动根据类型创建数据…Enum-178newdelete全局179大数据乘法与结构体-181函数模板与auto自动变量.-185-宽字符本地化inline内联函数188CCPP不同189-0815;。.∴……-193-函数包装器管理内嵌函数…∴…………-193-函数包装器管理外部函数.-195-函数模板根据类型覆盖.…….….-195CPP类型转换四种cast-199-函数模板重载调用规则-200-函数可变参数通用类型模板函数cpp新数组202高级数组 array. vector.-203欢迎交流,互相学习吴英强专注于C/C++ Android, Linux,ARM技术博客http://blog.csdn.net/waldmerLambda [ret]int x)XXX; I-206动态不规则数组以及增删查改-208-动态数组任意位置插入211多元数组 tuple212new限定区域分配内存的语法-213-函数模板重载-214引用包装器stde(变量)215-仿函数转义字符R”(-217-usng别名模板元编程比递归优化218智能指针∴-220多线程221静态断言以及调试技能的要求 assert-222-0817···-224-递归汉诺塔双层递归-224CPP结构体224面向过程与面向对象的编程模式··,··+···,-226类的常识共用体实现一个类的特征QT应用于类以及类的常识-2310819-234-类的成员函数与 const- mutable构造与析构-237-拷贝构造 deletedefault以及深浅拷贝.静态成员函数成员变量类在内存的存储默认参数..-243-友元类以及友元函数247画图-248-0820···*·;,一Nullptrconst对象类指针引用以及 mallocfree与 newdelete差别250-简单QT界面信号图形化输入输出…-253-类重载运算符-253-QT加法重载类的重载赋值运算复合赋值运算关系运算元重载.256自增在前在后差别···+······∴-261赋值重载深浅拷贝重载下标…∴-269-画图2700822类型转换函数与构造转换函数类的继承类的继承以及区别.-279欢迎交流,互相学习。吴英强专注于cC++ Android, Linux,ARM技术博客http://blog.csdn.net/waldmer继承静态成员与静态函数-280继承实现代码重用281单继承QT案例284多继承简介以及实战继承以及作业安排……,-289-画图.-292-08233静态联合编译与动态联合编译293-类与类指针父类子类交错..-295-父类指针了类指针释放………-295虚函数∴-299-纯虚函数概念以及虚析构函数-303抽象类与纯虚数以及应用∴304虚函数原理-309虚函数分层以及异质链表310-类模板的概念以及应用0825.316类模板…··············4final override322类模板与旾通类的派生类模板虚函数抽象模板类..-323类模板友元………326-位运算算法以及类声明…327类模板与友元函数友元类-331类模板当作类模板参数333static与类模板-334-类嵌套以及类模板嵌套336Rttⅰ实时类型检测337高级new创建-340类以及函数包装器-341类成员函数指针-3430826文件重定向346键盘输入流.-347屏幕输岀流/实数整数输出/格式控制348字符串输入输出.-351-文件读写简单操作/文件读写按行读写扫描读写-355OSQT358字符文件读写二进制与文本差别.-358-get与 getline挖掘数据.….-359-二进制与文本差别-361-二进制文件读写-362-随机位置文本二进制读写…363多线程初级0828-371欢迎交流,互相学习吴英强专注于C/C++ Android, Linux,ARM技术博客http://blog.csdn.net/waldmersTL入门与简介371STL容器概念容器迭代器仿凶数算法STL概念例子.栈队列双端队列优先队列380数据结构堆的概念……∴386-红黑树容器386-0829394位容器 multimapmutisetstring…394-算法函数兰不达表达式以及类重载401GpU编程….…………-4020830∴-407-不达表达式7sπL算法-操作数据-409-0831类与对象的异常416血试100题1-100……………-4220901422各忘录模式.-422-策略模式.,…,,………………-424-抽象工∴-426-工厂方法模式.∴431简单工厂模式433代理模式-436-单例模式-438-迭代器模式-439-访问者模式观察者模式43建造者模式-446-解释器模式………-4148-命令模式-450-模板模式∴453-桥接模式.454适配器模式-456-外观模式.卓·:··4∴-459-亨元模式-460原型模式462责任链模式···+···········∴-464-中介者模式467装饰模式470状态模式471组合模式4740903...,…-478-数据结构与算法概念与学习方法boost模板库与线性表…478欢迎交流,互相学习。吴英强专注于C/C++ Android, Linux,ARM技术博客http://blog.csdn.net/waldmer线性表顺序存储.∴-479线性表链式存储-487索引存储-496-哈希存储.-4960904..-499-boost array bind_ fun ref………-499-boost智能指针-503-boost多线程锁定…509-哈希库.510正则表达式·················:··-511-0905boostsocketTcPUdp512虚数表的调用复杂表达式906.521递归转栈….…521二叉树实现5240907-533-象棋五子棋代码分析.∴-533-寻找算法以及排序算法537欢迎交流,互相学习。吴英强专注于C/C++ Android, Linux,ARM技术博客htt:// blog. csdn.net,/ waldner072332位与64位地址与内存的关系4G=4*1024M=4*1024*1024k=4*1024*1024*1024Byte字节=2~3232位,指针就是4个字节#include void mainont num = 10printf("%p",&num);t*p=&numprintf(p=%d sizeof(p));getchar(调戏窗口程序使用黑客工具,spy,找到/ Findwindow参数:窗口类名,标题#include #include#ⅰ nclude< Windows. h>欢迎交流,互相学习。吴英强专注于C/C++ Android, Linux,ARM技术博客http://blog.csdn.net/waldmer窗口隐藏的时候,可以从任务管理器中,看到此进程已经运行,使用cmd命令中的命令,把进程结束掉C: Userswuyingqiang>taskkill /f/im notepad.exe成功:已终止进程" notepad. exe",其PID为7556成功:已终止进程" notepad. exe",其PID为1384成功:已终止进程" notepad.exe",其PID为3572成功:已终止进程" notepad.exe",其PID为5272。成功:已终止进程" notepad.exe",其PID为6212void open Calco//int i=0/for(;i
- 2020-11-28下载
- 积分:1
基于fpga的自适应滤波器
关于自适应滤波器的fpga实现,对于想学数字滤波器的和fpga的同学来说非常好基于FPGA的自适应滤波器设计摘要数字滤波器较模拟滤波器相比,具有信噪比髙,过渡带性能好,髙可靠性及可扩展性,设计灵活方便的优势,应用范围越米越广。随着专用数字信号处理芯片的发展,数字滤波器的可实现性能以及处理速度得到了极大的提升,FPGA(现场可编程门阵列)作为一种新型数字信号处理芯片,具有数字信号处理速度快、数据并行处理并且利用硬件编程语言直接进行硬件设计等特点,自适应滤波器的FPGA设计以及优化方法,是目前的一个研究热点。本文对自适应滤波器进行 Matlab仿真,以对其结构特性以及运算特点进行了解,利用 Matlab生成测试信号与FPGA仿真软件 Modelsim进行联合设计以及行为仿貞,采用 Altera公司的 Cyclone IV系列芯片EP4CE15F17C8为载体的开发板进行设计仿真,在设计过程中,充分利用FPGA可以并行处理以及快速的数字信号处理的特点进行针对性的结构设计。在此基础上做了以下工作。在充分了解滤波器,自适应横向滤波器,自适应陷波滤波器以及FFT变换原理的基础上,选择并搭建∫设计平台,在目前自适应横向滤波器的FPGA设计的研究基础上,采用模块化的设计方法,单独设计可重复调用的串行FR滤波模块以及串行LMS杖值更新模块,对两种模块的设计以及综合分别进行了设计以及仿真实验,通过并行调川两种不同模块,每种调用四个的方式设计一个16阶的滤波器为例来阐述模块化设计方法,并设计32阶64阶分别与仝串行以及仝并行设计方式的处理速率以及逻辑资源调用进行比较,结果说明运算速率与并行调用模块数量成正比,远快于全串行结构的设计方式,并且对于64阶仝并行系统来说,极大的减少了硬件资源的消万方数据耗,提髙了设计灵活性。在此设计的基础上,针对传统自适应陷波滤波器的滤波频夲固定不变的缺陷,提出了一种频域变换法检测噪声特征频夲,并可以根据特征噪声频率实时改变陷波频率的滤波器设计方法,为了减小设计复杂性,研究了符号LMS自适应陷波器算法,通过 Matlab仿真实验选取符号的特征变量。并对噪声信号提取算法进行了介绍和设计仿真,最终设计出根据噪声频率自动调节陷波中心频率的自适应陷波滤波器,并对滤波器性能进行了 Modelsim仿真研究,自适应陷波器具有能有效的滤除对应频的单频噪声信号,并且根据噪声的频率特性自动调节滤波频率的特点。针对两种自适应滤波器的FPGA设计,体现了FPGA在自适应滤波器设计时灵活性以及针对性,两种不同类型的自适应滤波器,可以分别适用于普通数字滤波器无法有效发挥作用的场合,同时本文的设计方法对其它类型数字信号处理系统的FPGA实现具有一定参考价值关键词:现场可编程门阵列,自适应横向滤波器,模坎化设计,自适应陷波器万方数据DESIGN OF ADAPTIVE FILTER BASED ON FPGAABSTRaCTCompared with analog filter, digital filter has the advantages of high signalto noise ratio, good performance of transition zone, high reliability andexpansibility, flexible and convenient design and application With developmentof special digital signal processing chip, digital filter Can achieve performanceand processing speed has been greatly improved, the realization of the use of thebetter performance of digital chip design more complex filter, so that the adaptivefilter realization and application become possible, FPGA (field programmablegate array) is a new type of digital signal processing chip, with parallel processingof data and Can use hardware programming language directly the characteristicsof the hardware design, is currently a hot research topic for study of adaptive filteris implemented on FPgaThe matlab simulation of the adaptive filter to understand the characteristicsof the structure and opcration characteristics, and the use of Matlab generatingtest signals and FPGA simulation software Modelsim joint behavior simulation ofFPGa design, then to Altera cyclone Iv series chip ep4cel5f17c8 as the carrierof the development board for simulation design. in the design process, make fulluse of FPGa parallel processing and fast digital signal processing for structuraldesign On this basis, the following work has been doneThe filter needed to fully understand, adaptive transversal filter, adaptivenotch filter and Fft transform based on the principle of selection and build adesign platform, first in the basic research of current FPGA adaptive transversalfilter realization, using modular design method, the structure is divided into singleand serial FiR filter module serial LMS weight update module, the design of thetwo modules and integrated were designed, and simulation experiments, through万方数据the parallel call two different modules, each call the four way to design a 1 6 orderfilter as an example to illustrate the modular design method, and design of 32order and 64 order respectively with serial and the processing rate parallel designmethods and logic resources call were compared. The results show that theoperation rate and parallel call module is proportional to the number, far faster Inthe whole serial design mode, and for the 64 order all parallel system, greatlyimprove the design flexibility, reduce the consumption of hardware resourcesAfter the design on this basis, the traditional adaptive trapped wave filter, filterfrequency fixed defects, put forward a method of frequency domain transformdetection noise characteristic frequency, and can change in real time accordingto the characteristics of noise frequency trapped wave frequency filter designmethods, in order to reduce the design complexity and the sign LMs adaptivenotch filter algorithm, the characteristic variables of the symbol is determinedthrough the simulation experiment of Matlab. And the noise signal extractionalgorithm are introduced and the simulation design, the final design according tofrequency noise automatically adjust the trapped wave frequency adaptive notchfilter, and on the performance of the filters were Modelsim simulation researchthe adaptive notch filter has CaN effectively filter on the frequency of the singlefrequency noise signal, and does not affect the characteristics of waveforms usefulFor the fpga design of two based on the lms adaptive algorithm of filterreflecting the FPGa in the adaptive filter design flexibility and uniqueness, twodifferent types of adaptive filter can be respectively applicable to ordinarydigital filter Can not effectively play the role of occasions, also the designmethod of other types of digital signal processing system based on FPGaimplementation has a certain reference valueKEY WORDS: FPGA, Adaptive transversal filter, Modular design, Adaptivenotch filter万方数据目录摘要ABSTRACT··,··*···第·章绪论…1.1研究目的与意义1.1.1数字滤波器简介·················+··*····+··········*···:··.*····…···*········:··+*·········1.1.2基于FPGA的自适应滤波器研究意义·“中,非2国内外研究现状1.2.1自适应滤波器研究现状122自适应滤波器的FPGA实现研究现状·······申中···申1.3课题的主要研究内谷··B申61.3.1课题的主要工作1.3.2课题的研究实现方案…4本章小结第二章自适应陷波滤波器的原理以及实验平台2.自适应滤波器理论介绍·····中中·········中·中·"中··中·中····中····申2.1.1IR与FIR滤波器简介2.12LMS算法原理132.1.3自适应陷波器的原理15214FFT变换的原理··p··中··中··,和p申·和中中····中·申22设计平台介绍2022.1自适应滤波器的设计平台20222自适应陷波滤波器接2223本章小结24第三章自适应横向滤波器的FPGA实现..273.1自适应滤波器的 Matlab仿真研究…····中中中申·中申···申申p中申·中申··申p申中273.1.1自适应滤波器的功能仿真研究273.2自适应滤波器的滤波收敛性能研究方法…83.1.3自适应滤波器的收敛性能研究….30万方数据3.2自适应滤波器的FPGA模块化设计333.2.1自适应滤波器FPGA模块化设计原理333.22FIR串行模块的设计申·中p申申,申申申·申和中p申申非申·p;申p申·非申·申新申中和申p申和·申·申P申申·申申申p申p343.2.3LMS串行模块的设计35324自适应滤波器多级处理结构整体设计363.2.5结构特性分析393.3木章小结···非中中非第四章自适应陷波滤波器的FPGA设计41符号LMS算法的梯度特征值选择及系统结构设计.414.1.1符号LMS算法的梯度特征值选择4141.2FIR自适应陷波滤波器系统结构设计42噪声信号分析以及参考信号频率值提取……1464.2.1FFT变换的功能464.2.2FFT变换的参数介绍42.3 FFT IP核的调试以及功能测试……4842.4特征噪声频率提取算法.…43自适应陷波模块的设计非··申申中431自适应波器的 Matlab仿真43.2自适应陷波器FPGA设计时的数据截取方法554.3.3白适应陷波器模块的FPGA设计56434自适应陷波器的整体设计6044采用频域变换法自适应陷波器滤除工频噪声.44.1提高系统实时性的方法6144.2模拟与实验验证45木章小结·········65第五章总结与展望DD67参考文献致谢75攻读学位期间发表的学术论文目录77ⅤI万方数据太原理工大学硕上饼究生学位论文第一章绪论1.1研究目的与意义滤波器从1917年发明以米,已经有近一个世纪的发展史1,滤波器的发明也极大的推进了电了器件以及通信的发展。计算机技术以及集成电路的技术的发展又使滤波器产生飞跃式的发展,各科数字电路以及模拟开关电路元件体积越来越小,密度越来越高,直接催生了集成芯片式RC有源滤波器,开关电容滤波器以及数字滤波器。使滤波器的应用范围再一次扩大,不仅仅在通信领域,在医学,电气,图像处理等领域也起到了举足轻重的作用。1.1.1数字滤波器简介数字滤波器作为数字信号处理的一部分,是随着计算机以及数字器件的发展而发展起来的一门比较新的技术,尤其近几年来,数字处理芯片以及数字信号处理技术的发展使得数字滤波器的优点越米越突出,现代数字滤波器可以轻易实现将过渡带缩短到Iz以內,这点是模拟滤波器无法达到的性能指标。数字滤波器比模拟滤波器还有更优越的信噪比、可靠性以及灵活性和可扩展性,并且随着数字集成电路的发展,制作成本将会越来越低S。目前使用比较多的滤波器设计方法分别是无限冲击响应(IR)以及有限冲击响应(FR)波器,其屮由于FR滤波器可以很容易实现具有严格线性相位结构的滤波器,而IR滤波器要达到严格线性相位结构必须经过仝通网终线性相位矫正从而大大增加滤波器的阶数。FR滤波器由于其冲击响应有限,所以是个稳定系统。并且没有反馈环节,有利于其在使件上实现。所以FR滤波器以其独有的优势应用于线性相位结构的系统屮。近几年米,随着RLS以及LMS自适应算法的提出S,很多专家学者提出了利用自适应算法在数字系统上设计自适应滤波器,使滤波器的性能更加灵活,并且在对滤波器有特殊滤波要求的场合使用門,例如自适应陷波器常用在电气设备中滤除工频干扰而对其余频率信号几乎完全不产生影响,以及在通道失配屮采用自适应滤波原理进行矫正12,有些系统可以采用自适应算法达到抵消噪声千扰3,这些都是常规滤波器无法达万方数据基于FPGA的自适应滤波器设计到的性能指标。LMS算法以其简单的特性,可以在多和数字芯片上进行设计。尤其在FPGA上实现各种自适应滤波器14,是目前针对自适应滤波器方面的一个研究方向。1.1.2基于FPGA的自适应滤波器研究意义FIR与IR滤波器都是数字滤波器,即在数字系统上实现滤波器功能,而数字系统又分为软件数字系统实现以及硬件数字系统实现,软件数字系统实现最常用的例如使用MEATLAB或者 Labview进行编程实现15,其优点是可以自如的调节信号字长以及滤波步长,可以达到很高的精度,并且可以综合其它的处理功能为一体。缺点是接口比较单,必须接外置的采集卡,需要以计算机为载休休积往往很大。并且对信号的处理速度在相同糸件下要比硬件实现的滤波器系统要慢,并不能达到很好的实吋性,实际应用中只适用于屮、少量的数据后期分析以及对成本以及实时性要求不高的一些系统使用16。哽件芯片实现的数字滤波器实吋性要比PC杋软件好,并且硬件载体也比较多,如单片机、ARM类芯片,和专门用于数字信号处理的DSP芯片上均可以实现滤波器功能,但是其运算均为串行运算,(现场可编程门阵列)FPGA作为·种可编辑器件,不仅能实现上述所有芯片的功能,在资源配置合理的情况下,还能进行处理馍垬多重并行调用,即在个芯片上实现多个基本芯片同时处理的功能8,从而达到特别优异的数字信号处理功能,目前在图像处理等需要实时对大量数字信号进行滤波处理的领域,FPGA已经成为款不可或缺的芯片。但硬件设计数字滤波器的时候,山于数字滤波器的特殊性,在设计数字滤波器的时候,并没有现成的标准公式,这造成了很多数字滤波器并不能完全直接在硬件系统上实现,例如,FR数字滤波器,必须先利用软件工具得出FIR滤波器的各延迟抽头系数才能进行硬件设计,所以设计FIR滤波器的时候,是离不开计算机系统的,但是设计好的滤波器,可以脱离软件系统进行使用。由亍FR滤波器的本质就是一个标准的乘加运算集,恰好可以利用分布式算法实砚FIR滤波器,分布式算法的每个乘法运算屮必须有一个乘数为常数,这又与FPGA的基本逻辑单元査找表的功能相适应,利用査找表结构可以进行个常数乘数与·个变量相乘的运算,这样在实现FIR滤波器的时候,利用分布式算法,可以实现不使用或仅使用少量乘法器资源即可完成FR滤波器结构设计,FPGA的设计结构刚好与FIR滤波器的万方数据
- 2021-05-06下载
- 积分:1