自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

DayDayUp

但行好事,莫问前程。

  • 博客(303)
  • 资源 (31)
  • 收藏
  • 关注

原创 ARMv8-A架构下的外部debug模型之外部调试事件(external debug events)概述

嵌入式交叉触发器(Embedded Cross Trigger,ECT)是Armv8- A系统中的外部调试器用于生成调试事件的一种机制。ECT还支持将调试事件从一个代理路由到系统中的另一个代理。外部调试器可以使用ECT来生成debug request或restart request。这些事件会触发处理器之间的路由事件。例如,这些事件可以将一个debug request 事件从一个处理器路由到其他处理器。这样的话,当系统中的一个处理器停止时,系统中的其他所有处理器都可以停止。

2024-04-13 21:07:04 1007

原创 开源,微信小程序-超级计算器T3000 简介

笔者于四年前自学微信小程序开发,这个超级计算器T3000就是当时的练习作品。超级计算器T3000的功能有很多,其中的核心技术是矩阵计算,使用的工具库是math.js,其次是复杂运算和分式运算。关于math.js的使用,可以参考另一篇博文:微信小程序使用math.js制作计算器。写这篇博文的原因是,最近有同学向我询问该小程序的源码,其实该习作早在三年前就已在Github上开源:所以笔者想重新介绍一下这个尘封已久的微信小程序习作:超级计算器T3000 。该小程序已在微信端上线,欢迎大家体验,微信小程序码: 普

2024-03-29 22:05:36 1344

原创 ARMv8-A架构下的外部调试模型(external debug)简介

ARMv8-A架构支持两种debug模型:self-host debug 和 external debug。- Self-host debug (自主机调试),调试器运行在被调试的CPU内部,调试器代码可以是 应用程序、内核、操作系统以及hypervisor。比如我们常见的GDB调试,就是使用self-host debug模型。**Debug exception**就是自主机调试的基础,调试器通过代码来控制debug 逻辑单元,从而产生debug 事件,而这些debug事件又会进一步产生debug 异常

2024-03-29 22:04:44 1357

原创 ARM架构中导致独占式内存访问Exclusive access 指令(LDXR/STXR)失败的原因分析

在Load-Exclusive/Store-Exclusive指令的使用过程中,存在着一些使用限制。如果未按照规范,错误地使用Load-Exclusive/Store-Exclusive指令,可能会造成Load-Exclusive/Store-Exclusive失效。对于Load-Exclusive指令,我们可以检查数据是否load成功;对于Store-Exclusive指令,会返回一个状态位信息,为0表示exclusive 访问成功,为 1 表示失败。

2024-03-16 19:36:24 1480

原创 ARM架构下如何使用break-before-make规则安全地动态更改MMU 页表条目( translation table entries)

我们在使用ARM MMU一般会遵循如下流程:1. 配置TTBR、TCR 和MAIR等MMU配置寄存器。2. 配置页表 pagetable,VA 和PA的映射关系,地址空间属性等等。3. 使能MMU和cache。即先配置好pagetable再使能MMU和cache,在MMU和cache使能之后,如果想要在程序运行时,动态改变page table或者称为translation table,需要遵循一定的规则(break-before-make)才能保证其安全性和可靠性。

2024-03-16 19:33:21 392

原创 ARM如何利用PMU(Performance Monitor Unit)量化L3 cache的cache eviction(估算cache eviction的概率)

L3D_CACHE_REFILL事件里基本包含了写入cache(L1、L2或者L3)的操作,而L3D_CACHE_WB事件则是将cache line从cache 中写回到下一级内存中的操作。换句话说,通过L3D_CACHE_REFILL事件,PMU可以统计出从cache获取数据,进行cache line填充的次数。通过L3D_CACHE_WB可以知道从cache(L1、L2或者L3)中的dirty cache line写回到L3的下一级内存的次数。L3 cache的cache eviction(cache

2024-03-06 22:09:45 1378 1

原创 ARMv8-AArch64 的异常处理模型详解之异常处理详解(同步异常和异步异常的分析和处理)

同步异常发生时,会将产生同步异常的那条指令的地址写入ELR,所以如果想知道是哪条指令导致异常的产生,软件在处理异常时可以读取ELR中的值进行分析。ESR寄存器里保存着一些异常的诊断信息,比如异常产生的原因。在进入异常后,我们可以读取对应异常等级的ESR(ESR_EL1,ESR_EL2或者ESR_EL3),通过解析各个字段的数值所表示的含义,来分析出当前异常产生的原因。FAR寄存器将为一些同步异常保存导致异常发生的地址

2024-02-26 00:23:03 3176

原创 以ARM Cortex-A55/A53为例分析 L1/L2/L3 cache所支持的写策略(write-back/wirte-through,写通和写回)

Cortex-A53处理器的L1 data cache以及L2 cache都不支持Write-Through策略,当处理器访问内存类型为Write-Through的数据时,这些数据并不会经过L1 data cache和L2。至于L1 instruction cache,对于指令数据,处理器只是读取,并不会写,所以cache 的写策略对指令缓存不起作用。同Cortex-A53一样,其CCSIDR的WT状态位也始终为0,说明**对Cortex-A55 来讲,它的任何级别的cache(L1/L2/L3)都不支持

2024-02-26 00:20:09 3914

原创 ARMv8-AArch64 的异常处理模型详解之异常向量表vector tables

异常向量表(vector tables)是一组存放于普通内存(normal memory)空间的,用于处理不同类型异常的指令(exception handler)。当异常发生时,处理器需要跳转到对应的异常处理器(exception handler)来处理异常。异常处理器充当调度代码,识别异常的原因,然后调用相关的处理程序代码(异常处理子程序)来处理异常。

2024-02-21 23:20:10 5376 2

原创 ARMv8-AArch64 的异常处理模型详解之异常处理详解(进入异常以及异常路由)

在上篇文章中,作者对异常处理整体流程以及相关概念做了梳理。接下来,本文将详细介绍处理器在获取异常、异常处理以及异常返回等过程中都做了哪些工作。

2024-02-18 16:02:12 4655

原创 ARMv8-AArch64 的异常处理模型详解之异常处理概述Handling exceptions

当异常发生时,处理器会先保存处理器当前的状态(CPSR,也称为PSTATE)以及异常返回地址。然后进入一个特殊的状态来处理改异常。当前处理器的状态信息来自于PSTATE寄存器,也就是CPSR,处理器会将异常发生前的PSTATE的值写入到SPSR(Saved Program Status Register)中。而异常返回的地址,将会写入到异常链接寄存器ELR(Exception Link Register)。

2024-02-13 23:36:50 4904

原创 ARMv8-AArch64 的异常处理模型详解之异常类型 Exception types

异常(Exception)通俗点来讲,就是系统在正常运行的时候出现的非正常事件,这个非正常事件会导致系统状态更改或者其他错误,为了确保系统功能能正常运行,需要一些带有特权的软件代码(exception handler)来采取一些补救措施或者更新系统状态,这个过程被称为异常处理,系统会停止当前程序,并进入handler,在handler处理完成之后,系统会从handler返回,再继续正常运行。所以可以说,异常就是可以导致当前正常程序被挂起的任何事件。

2024-01-20 20:42:34 5145

原创 ARMv8-AArch64 的异常处理模型详解之异常等级、执行状态以及安全状态

AArch64使用 EL 来命名异常等级,EL3权限最高,EL0权限最低。如下图所示,为一种通用的异常等级模型:- 用户应用程序执行在EL0。- 操作系统,比如Linux执行在EL1.- Hypervisor, 比如虚拟机程序,执行在EL2- 固件或者安全网关相关代码,执行在EL3.比如,在EL1的Linux可以使用软件接口标准在EL3上调用固件函数。这个模型意味着大部分的PE处理通常发生在EL0/1处。

2024-01-07 21:52:24 5858 1

转载 【转载】Cortex-A53 Pipeline Ordering and Memory Ordering

A53既然是顺序执行的流水线,那么还需要 memory barrier 做什么用?顺序流水线指的是处理器按照它们在内存中出现的顺序发出指令(issue)。下一条指令不会早于上一条指令发出。 dual-issue pipeline意味着处理器可以同时发出2条指令。乱序流水线指的是处理器可以不按照指令在内存中的顺序发出(issue)指令。简单而言,一条指令的执行需要经过取指(fetch)、解码(decode)、发出(issue)。每条指令按照内存中的顺序解码(decode),并按序存储在指令解码缓冲区中(

2023-11-19 18:10:26 4400

原创 点云处理及三维重建软件(Point Cloud Viewer, PCV)的环境搭建详细教程

最近有同学在搭建PCV环境时遇到了一些问题来向我求助,确实这个工程涉及面比较广:PCL+QT+CPP+VS+CMAKE,所以一些没接触过相关工具的同学一时不知从何入手,特此把环境搭建教程再详细化,祝同学们都能跑通PCV。评论区里已经有同学跑通了该项目,作为一个开源爱好者,这一点足以让人欣慰。另外,本项目早已在[Github](https://github.com/luolaihua)开源,目的是为了让同学们少走弯路,毕竟国内相关免费软件和教程少之又少。既然是**开源**,所以是**免费**的,遇到技术问题可

2023-10-24 13:18:38 4515 8

原创 如何利用好cache写出高性能的代码(Make your programs run faster by better using cache )

笔者在学习cache时总结了一些在软件层面充分利用cache,来写出高性能代码方法。如何利用好cache写出高性能的C代码一,当线性访问数据(需要遍历数据结构)时,使用数组(arrays)而不是链表(Linked lists)二,经常使用的变量应该放在一起声明定义,(Variables you access often together should be close to one-another in memory)三,内存对齐:优化访问结构体或者类数组四,高效地访问矩阵(二维数组)Access

2023-10-12 23:31:33 3258 1

原创 ARMv8如何读取cache line中MESI 状态以及Tag信息(tag RAM & dirty RAM)并以Cortex-A55示例

本文以Cortex-A55处理器为例,通过访问 处理器中的内部存储单元(tag RAM和dirty RAM),来读取cache line 中的MESI信息。Cortex-A55提供了一种通过读取一些系统寄存器,来访问Cache 和 TLB使用的一些内部存储单元(internal memory)的机制。这个功能可以探查出当缓存中的数据与主存中的数据不一致时存在的问题。此外,AArch64模式和AArch32模式的读取方式不同:当处理器处于AArch64模式时,先通过一些只写(write-only)寄存器

2023-10-02 15:47:28 5079

原创 缓存一致性(cache coherency)解决方案:MESI 协议状态转换详解

M,Modified, Unique Dirty((UD), 只存在于当前cache中(unique),并且该cache line上的数据与下一级存储单元中的数据不同(dirty)。换言之,cache line中最新的数据位于当前cache,其他cache中没有备份 ,cache line中的内容与主存中的不一致。E,Exclusive, Unique Clean(UC),数据只存在于当前cache line中,并且为clean的。cache中cache line中的数据于主存中的一致,并且其他core中

2023-09-29 22:17:37 4035

原创 ARMv8 cache的包含策略inclusive 和 exclusive之间的区别以及Cortex-A55示例详解

Inclusive cache: L2包含了所有的L1里的所有有效数据。Exclusive cache: L1 和L2 的数据互斥,同样的一份数据不能同时存在于L1和L2。

2023-09-24 15:11:04 5743 3

原创 图解直接映射(Direct mapped)、全相联(Fully-associative)和组相联(Set-associative)cache缓存基本原理

直接映射优缺点- 优点: 硬件实现简单,成本低.- 缺点: 灵活性差。每个主存块只有一个固定的行可以存放,因此即便cache中有大量空闲cache line可用,某个cache line上的data仍可能被替换出去。如果cache容量比较小,则非常容易发生冲突,频繁替换(cache trashing),效率大大降低。- 适用范围:直接映射方式一般用于大容量的cache中。全相联映射优缺点- 优点: 全相联映射方式比较灵活,主存的地址可以映射到Cache的任一cache line

2023-09-21 05:00:00 14796 9

原创 ARM如何利用PMU的Cycle Counter(时钟周期)来计算出CPU的时钟频率

本章将学习如何利用ARM PMU的Cycle Counter,来计算出CPU的时钟周期,从而计算出CPU的时钟频率。在介绍计算方法前,有必要先介绍下什么是时钟周期、机器周期以及指令周期。

2023-09-13 23:10:32 5690

原创 ARM 中缓存维护策略:Allocate policy(读分配/写分配),Write policy(写通/写回)以及replacement policy基础知识

针对不同的使用场景,有不同的cache 策略来影响cache的操作。缓存策略使我们能够描述何时应该将一个cache line写入给data cache,以及当执行store指令并发生cache hit时应该发生什么。

2023-09-09 12:47:55 4471

原创 组相联cache如何快速实现cache line eviction并使用PMU events验证

cache controler 是一个管理cache 内存的硬件结构,实际上它的绝大部分行为对程序来说都是不可见的。它会自动地将代码指令或者数据从主存中搬运到cache中,响应CPU读写内存的请求,并将它们转化成对cache以及外部内存的操作:cache controler收到CPU对某个地址进行读写的请求时,它会先检查这个地址是否存在cache中,这个动作称为cache look-up(缓存查找)。

2023-09-03 20:07:11 3935 1

原创 开源,微信小程序 美食便签地图(FoodNoteMap)的设计与开发

一个熟人之间的美食记录、分享和交流的平台。它适用于各种人群,无论是学生党还是上班族,只要是对美食感兴趣,都可以使用这款小程序去记录分享美食。

2023-08-13 20:37:40 6598 4

原创 Debug工具Trace32的ARM内存访问类型详解

本文将以ARMv8为基础,详解Trace32的内存访问类型。访问内存时,通过BUS master ,也称为Memory Access Ports (MEM AP)。由Debug Access Port (DAP)提供。DAP是一个CoreSight组件,在基于Cortex的设备上是必需的。用户必须给MEM-AP(比如AHB)分配一个内存访问端口号,然后就可以使用 AHB 作为访问类型。AXI和DAP也是一样。至于DAP2, AHB2, APB2, AXI2),是给可以控制两个DAP的调试器使用的。

2023-07-15 23:20:51 4250 2

原创 ARMv8的异常等级(Exception Level)以及执行状态(AArch64/AArch32)

在ARMv8中,存在4级异常等级(Exception Level),程序需要跑在这四级异常等级中的一个。在AArch64下,异常等级近似于ARMv7中的特权等级(Privilege Level),异常等级定义了每个等级的特权等级,所以可以认为ELn 对应这 PLn。n (0到3)越大,说明特权等级越高。

2023-07-09 22:00:14 7509 2

原创 C语言结构体字节对齐(内存对齐)之#pragma pack和__attribute__((packed)的使用

在不使用和本文主要讨论如何使用#pragma pack和__attribute__((packed)等选项来自定义字节对齐大小。使用pack功能将数据结构进行打包,以减小应用程序对内存的占用,这一点在嵌入式系统中,尤其是需要存储和访问大量的时候,显得尤其重要。如果没有使用#pragma pack和__attribute__((packed)等选项,将数据结构进行打包。编译器为了提高对数据成员的访问速度,通常会在不同大小的数据成员之间插入空白内存(padding),进行补齐操作,即内存对齐。

2023-07-01 23:07:54 6841

原创 ARM嵌入式编程优化之在C/C++中栈的使用

函数使用的堆栈量取决于函数参数的数量和类型、函数中的局部变量以及编译器执行的优化等因素。栈的使用情况很难估计,因为它依赖于代码,并且根据程序执行时所采用的代码路径,栈的使用在每次运行之间可能会变化。要检查应用程序中的栈使用情况,可以使用链接器选项** --info=stack **。命令,生成callgraph文件,该命令会生成一个名为FileImage.htm的文件,它包含应用程序中各种函数的堆栈使用信息。检查应用程序中函数使用的栈使用量是一种很好的做法。然后可以考虑重写代码以减少栈使用。

2023-05-27 23:17:07 4372

原创 Trace32使用Data.Test和Data.TestList命令测试内存类型以及完整性

Data.Test: 内存完整性测试 Memory integrity test我们在debug的时候,可以使用Trace32自带的一些命令快速地检测目标系统的内存的类型和完整性(是否可读或可写),以便快速排除内存缺陷带来的干扰。

2023-05-25 23:17:54 3552

原创 ARM嵌入式编程优化之内联函数(inline)

内联函数的本质是以空间换时间:增加了代码量,但减少了函数调用时带来的性能损耗。默认情况下,编译器会自己决定是否将一个函数内联。在编译优化时,默认情况下编译器会根据时间对性能进行优化。如果编译器决定内联一个函数,它会确保避免大量的代码增长。当使用-Oz或-Os等编译优化选项来限制代码大小时,编译器对内联做出智能的判断,并旨在将代码量保持在最小。

2023-05-22 22:38:18 4103

原创 Trace32 SRST和TRST、system.attach 和 system.up的区别

下图为Trace32工具为ARM debug设计的 JTAG pin 脚图:其中,TRST和SRST信号是可选的。

2023-05-19 20:12:57 5214

原创 ARM嵌入式编译之循环操作(LOOP)优化

取决于循环的迭代次数,完成循环可能需要花费大量时间,此外,每次迭代时,需要判断循环条件是否成立,这一操作也会降低循环的性能。

2023-05-16 22:45:58 4038

原创 ARM嵌入式编译器-volatile关键字对编译器优化的影响

智能的(进行优化的)编译器可能会把变量的值临时储存在寄存器上,便于下次读取,以节约时间,这个过程被称为高速缓存。但是有一些agent在内存上改变了变量的值,寄存器上的还是旧数据,这样就出错了。如果被volatile 关键字修饰,编译器不会进行高速缓存,直接去内存中读取该变量的数据。编译器会优化什么将内存变量缓存到寄存器中。调整指令顺序,充分利用CPU指令流水线,进行指令重新排序读写指令。

2023-05-07 17:14:26 4125

原创 ARM嵌入式编译器控制诊断信息(warning/error)

ARM编译器以警告(warning)和错误(error)的形式来提供编译诊断信息,并且用户可以通过一些命令行选项,来控制这些warnings和errors的打开或者关闭。编译器会在程序编译和链接过程中将遇到的warnings和errors在控制终端打印出来,如果用户有多个源代码文件,当errors被发现时,编译器只会报告的诊断信息。

2023-05-06 23:16:22 3996

原创 ARM嵌入式编译器编译优化选项 -O

Arm嵌入式编译器可以执行一些优化来减少代码量并提高应用程序的性能。不同的优化级别有不同的优化目标,不仅如此,针对某个目标进行优化会对其他目标产生影响。比如想减小生成的代码量,势必会影响到该代码的性能。所以优化级别总是这些不同目标(代码量,程序性能,debug信息)之间的权衡。

2023-04-25 22:38:30 5456

原创 开源,点云处理及三维重建软件(Point Cloud Viewer, PCV)的设计与实现

本文所设计的点云处理及三维重建软件主要基于Microsoft Visual Studio 2017以及Qt Creator两个集成开发环境,来完成代码的编写、分析、编译以及调试工作。此外,本文主要基于Qt框架来完成软件界面的设计以及内部逻辑功能的实现,Qt具有一套代码,多平台运行的特点,因此使用此框架开发的软件不仅能够在Windows和Linux等操作系统上运行,还能在MacOS上运行。也正是因为Qt的跨平台开发的特性,也使得本章所设计的软件可以在多个操作系统中正常运行。

2023-04-22 18:39:10 20858 60

原创 Qt开源项目:校医院远程诊断系统介绍

本人研一参考技术书籍开发的一款Qt程序,两年前已上传到GitHub,有兴趣的同学可以去看看。可能之前上传的项目不够完整,导致有一些同学没有在自己的环境上跑通,所以今天将整个工程都重新上传一遍,包括使用到的opencv的动态链接库。

2023-04-21 23:09:12 6571 4

原创 Arm Compiler for Embedded 6 编译器工具链常用选项

ARM 编译器6支持许多命令行编译选项,用户可以根据自己代码的使用场景,使用对象来选择使用,从而生成不同属性的应用程序。

2023-04-16 21:05:07 6856

原创 ARM 编译器 Arm Compiler for Embedded 6 相关工具链简介

Arm Compiler 6 是 Arm 中用于 Arm Cortex® 和 Arm Neoverse™ 处理器的最先进的 C 和 C++ 编译工具链。Arm Compiler 6 与 Arm 架构一起开发。因此,Arm 编译器 6 经过优化,可为从小型传感器到 64 位设备的嵌入式裸机应用生成高效代码。Arm Compiler 6 将 Arm 优化的工具和库与基于 LLVM 的现代编译器框架相结合。

2023-04-09 13:16:03 11257

原创 ARMv8-A非对齐数据访问支持(Alignment support)

例如,字数据可位于0x1000或0x1004,而不能位于0x1001、0x1002或0x1003,对于半字数据,地址可以为 0x1000 或 0x1002,而不能为 0x1001。由于存储器系统为32位的(至少从编程模型的角度来看是这样的),大小为32位(4 byte(字节)字节,或 1 word(字))或16位(2字节,或半字)可以是对齐也可以是不对齐的。PC对齐检查将生成一个与指令获取相关的PC对齐错误异常,在AArch64状态时,试图从架构上执行一条指令,该指令是用未对齐的PC获取的。

2023-03-29 22:34:20 11903

PCL1.9.1工具库,包括与之配套的VTK 8.1,用于开发基于PCL的图像界面程序

PCL1.9.1工具库,包括与之配套的VTK 8.1,用于开发基于PCL的图像界面程序。

2023-04-22

基于LPC算法的语音基频检测C语言相关代码整理

CCS3.3是一款DSP的集成开发环境。软件环境:Code Composer Studio 3.3, DSP型号:TMS320C6713, CODEC芯片:TLV320AIC23B, 使用到的库:TMS320C67xDSP Library- SPRC121, C语言相关实现。a. 选择合适的simulator b. 建立工程、编译源程序,生成.out文件 c. 载入(load program) d. 设置断点,打开图形窗口 e. 运行(run)

2022-04-08

点云处理-PCL-常用PCD格式和PLY文件

本人在学习PCL过程中,收集的一些pcd格式和ply格式的三维点云文件,压缩包内的主要为动物点云模型,其中包括:兔子,中国龙,猴子,猫,狗,猪,狼以及犰狳等动物类型。 适合人群:入门点云库PCL的同学。

2022-04-06

Zotero软件及浏览器插件.zip

论文文献管理神器Zotero软件及谷歌浏览器插件

2021-12-03

南京理工大学研究生实践鉴定表.doc

南京理工大学研究生实践鉴定表:结合具体过程,从巩固理论知识,分析解决问题、实践动手能力,创新能力、社会生活能力的提高等多方面总结)

2021-10-25

修复Tortoisegit图标不显示命令(直接双击运行).reg

手动加入Tortoisegit的图标注册表,修复图标不显示问题,直接双击运行即可

2021-10-07

Silicon Test and Validation.pdf

Manufacturing vs. Validation 斯坦福大学讲座课件: With design complexity and raw transistor counts growing at a 2X rate per generation, issues surrounding validation of silicon and test/manufacturing have become hot topics in the industry. Unlike software, hardware cannot be “patched” and must meet a much higher level of quality before being shipped to the customer. This lecture will go thru some of basic issues in both validation and manufacturing of digitial designs. 通过设计复杂性和原始晶体管计数以每代2倍的速率生长,硅和测试/制造的周围验证的问题已成为该行业的热门话题。 与软件不同,硬件不能“修补”,并且必须在运送到客户之前满足更高的质量。 这段讲座将在数字设计的验证和制造中进行一些基本问题。

2021-08-21

Shmoo Plotting _ The Black Art of IC Testing.pdf

介绍Shmoo测试的论文,介绍了shmoo的起源,在现代IC测试中的作用等。 INTERNATIONAL TEST CONFERENCE 作者:Keith Baker* and Jos van Beers‘ *Philips ED&T & #philips Research Laboratories, Eindhoven, The Netherlands

2021-08-21

pandoc-2.14.0.3-windows-x86_64.msi

pandoc是一个可以将md文件转成word文件格式的工具。

2021-06-27

CloudViewer-maize.pcd

CloudViewer类实现点云可视化的简单测试文件,为一颗麦子的三维结构图

2021-05-27

四则运算动画图解.pptx

字符串四则运算动画算法图解

2021-04-04

China-software-copyright-master

软件著作权申请教程和模板文档,附带源代码统计工具 1)申请表(单面打印,签名) 2)源码文档(单面打印,签名) 3)软件设计文档或者使用说明文档

2021-01-06

cmake_opencv450_mingw73_64_编译生成的动态链接库文件_install.zip

使用cmake,编译opencv4.5.0,编译器为mingw73_64,编译生成的动态链接库文件夹install,可以直接在Qt上使用。

2020-12-20

cmake_opencv配置所需文件.zip

使用cmake对opencv编译,configure时下载速度很慢,总是卡在opencv_ffmpeg_64.dll、opencv_videoio_ffmpeg.dll和face_landmark_model.dat三个文件上,有时还会超时,特此将这三个文件提前下载,编译的时候放到相应的文件夹中即可。编译时省去了下载的时间。两个dll文件位于opencv_4.5.0-build\3rdparty\ffmpeg文件夹中,dat文件位于opencv_4.5.0-build\testdata\cv\face文件夹中。

2020-12-19

公共管理硕士(MPA)学位论文开题报告模板.zip

南京理工大学公共管理硕士(MPA)学位论文开题报告;MPA研究生专业学位论文开题是进行学位论文工作的必经程序,开题报告通过后需提交1份经导师签字的白色铜版纸封面胶装的开题报告至MPA教育中心,并将开题报告电子版发至njustmpaktbg@163.com。 1、社会实践:入学第三个学期内完成社会实践活动(计2学分),在校外实践指导教师指导下进行社会实践,必须完成1篇社会实践调研报告(调研报告选题在校内导师和校外导师的共同指导下完成,且应对学位论文有前期支撑作用,字数不少于5000字),MPA研究生所在的社会实践单位负责人必须对该研究生签署社会实践意见,加盖社会实践单位公章。 2、论文开题:入学

2020-11-19

南京理工大学硕士论文开题报告模板.doc

南京理工大学硕士研究生学位论文开题报告;一、拟选定学位论文的题目名称二、选题的科学意义和应用前景三、背景科研项目情况简介四、学位论文主要研究内容 本论文主要包括以下几个方面的研究内容:五、预期解决的主要问题六、开题条件七、文献综述八、学位论文工作进度安排

2020-11-19

基于LPC算法的语音基频检测及CCS软件使用教程.zip

CCS软件安装,创建CCS6.0工程,与仿真器的连接,工程导入,ccs6.0的仿真和烧写等教程,使用CCS软件完成DSP实验基于LPC算法的语音基频检测。MATLAB源码,以及CCS范例工程

2020-10-17

FPGA实验-AM.zip

本实验利用DE2-115开发板及AD、DA扩展板实现一个数字式AM调制解调器,并要求测试调制解调器的功能和解调性能。ADDA扩展板是 利用HSMC接口进行扩展的子卡,相当于FPGA的一个外设。 2)扩展板提供两路65M,14位采样分辨率的ADC以及两路125M,14位采样精度的DAC。将设计好的AM调制器代码下载到演示板,调制信号由FPGA内部产生,设置调参数,包括载波频率,调制信号频率,调制指数。用示波器观察DAC

2020-10-17

Velodyne-LiDAR-VLP-16-User-Manual.pdf

Velodyne-LiDAR-VLP-16,velodyne激光雷达VLP用户使用手册,英文版。This manual provides descriptions and procedures supporting the installation, verification, operation, and diagnostic evaluation of the VLP-16, Puck LITE and Puck Hi-Res sensors.

2020-10-08

VeloView-3.5.3.zip

VeloView-3.5.3-Windows-64bit.rar;VeloView-3.5.0-Linux-64bit.tar.gz Linux系统;win7,8,10; 2.安装的路径一定都要是英文名的,不然会安装不成功或者无法正常工作。 3.如果安装不成功或者不能正常工作就试一下防火墙关了没,如果没关就把防火墙关上试试,很重要,亲测有效! 4.还有一个需要注意的问题就是网口的ip,除了192.168.1.201其他在1-200之间应该都可以,这个问题不大。

2020-10-02

基于线性调频信号的脉冲压缩处理(源码和实验报告).zip

基于线性调频信号的脉冲压缩处理,内含MATLAB源码,FPGA的ISE源码(Verilog HDL),以及一份实验报告。还有实验数据,实验截图。ADC采样测试,基于多相滤波的数字正交变换,匹配滤波求模输出

2020-10-01

SR12_CCS_v3.3_SR_3.3.82.13.rar

安装CCS3.3后会提示缺少ActiveState PerlV5.8,这个SR12_CCS_v3.3_SR_3.3.82.13补丁包可以安装ActiveState PerlV5.8和5.6。 Drivers For CCS3.3 SEED公司的usb2.0仿真器ccs3.3驱动 支持操作系统:WINDOWS2000专业版SP2或者更高版本 WINDOWSXP专业版 支持CCS版本V3.3 支持DSP系列: TMS320LF24xx TMS320F28xx TMS320VC54xx TMS320VC55xx TMS320C67xx TMS320C64xx TMS320DM640/1/2/3

2020-09-23

南京理工大学研究生电子对抗大作业.zip

设在10远处,有一地面跟踪制导雷达,主要指标如下:工作频率为10GHz~12GHz,伪随机跳频,跳频速率为1000H/s.脉冲重复周期10s,脉宽500ns,发射峰值功率2,雷达天线采用垂直线极化,主瓣增益为12dB,平均旁瓣增益为-5dB。为对其实施有效干扰,首先需对该雷达信号进行侦察和定位。 (1)根据上述指标,设计一套尽可能完整的侦察接收系统,要求经适当计算后,画出侦察接收系统原理框图,并对其工作原理及工作过程进行详细描述。

2020-09-15

南京理工大学电子对抗课件.zip

第1章 电子对抗(电子战)概述 第2章 电子对抗中的侦收技术 第3章 电子对抗中的电子进攻技术 第4章 有源干扰机理分析 第5章 对典型电子武器系统的干扰方式讨论 第6章 电子对抗中的电子防护技术

2020-09-15

应用随机过程-习题.pdf

应用随机过程林元烈,课后习题答案

2020-09-15

南理工射频电子线路课程ppt.zip

射频电路理论与技术;射频电路理论与技术-Lectrue 1(Transmision line);射频电路理论与技术-Lectrue 1(传输线性质及工作状态);射频电路理论与技术-Lectrue 2(微带线);射频电路理论与技术-Lectrue 3(微波网络);射频电路理论与技术-Lectrue 4(奇偶模);射频电路理论与技术-Lectrue 5-6 (filter);射频电路理论与技术-Lectrue 7(定向耦合器等);射频电路理论与技术-Lectrue 8 (impedance matching);

2020-09-15

南理工无线通信课程课件.zip

Chapter 1 Wireless Communciations;Chapter 2 large-scale fading; Chapter 3 small scaling fading ;Chapter 10-1 MIMO Systems;Chapter 10-2 MIMO Channel Modelling_2015

2020-09-15

无线信道衰落现象的理论分析与仿真.zip

大尺度衰落和小尺度衰落,路径损耗,阴影衰落,多径效应,多普勒效应,小尺度衰落信道的统计特性,小尺度衰落参数,大尺度衰落参数

2020-09-15

无线通信仿真代码MATLAB实现.zip

无线通信仿真代码MATLAB实现,Matlab Wireless Communications 各种应用例程。Rayleigh Fading Envelope,Rayleigh Fading Simulation,RF Design and Analysis

2020-09-15

MIMO-OFDM-Wireless-Communications-with-MATLAB.zip

MIMO-OFDM无线通信技术及MATLAB实现中的完整源码。MIMO和OFDM技术是B3G(LTE、LTE-A、4G)的关键物理层技术,该书详细介绍了该领域的概念和理论,并通过MATLAB程序进行仿真和验证。该书共分13章,分别为:无线信道:传播与衰落,SISO信道模型,MIMO信道模型,OFDM介绍,OFDM同步技术,信道估计,PAPR(峰均比)减小技术,小区间干扰消除技术,MIMO:信道容量,天线分集和空时编码技术,空分复用MIMO系统的信号检测,在发射端利用信道状态信息,多用户MIMO。

2020-09-15

calculator_wav.zip

语音计算器语音素材,wav格式,女声,里面有0-9,π,等于,退位,加减乘除,左括号,右括号,点以及各种三角函数的语音素材如sin,cos,tan等。适合用于微信小程序或,安卓以及各平台语音计算器的语音素材。

2020-04-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除