草庐IT

FPGA的专用时钟管脚CCLK的控制

项目场景:在运用的过程中需要去操作到FLASH的时候例如1:将数据存放到FLASH中或者取出来2:通过SPI去实现逻辑程序的更新问题描述在项目开始的时候由于不知道FPGA和FLASH直接的SPI时钟管脚是用的CCLK时钟管脚,导致一直没有办法去操作FLASH中的数据。返回去查看原理图的时候发现管脚是专用时钟管脚,查阅XILINX的资料UG470发现需要用STARTUPE2原语进行“使能”才可以进行操作原因分析:根据UG470文件描述CCLK为专用时钟管脚,当作普通管脚使用的时候需要进行使能。文件对原语的描述如下:解决方案:其中CCLK需要设置为inout类型,输入连接到STARTUPE2中,输

STM32 SPI通信协议1——协议基本原理及管脚定义

 SPI介绍           SPI全称为SerialPeripheralinterface,译为串行外围设备接口。SPI主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号编码器之间。    SPI是一种高速,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便。STM32也有SPI接口,SPI时钟最大可达18MHz支撑DMA,可以配置为SPI协议或者I2S(音频通信)协议。SPI的内部简明图MISO:M(master)主机,S(slave)从机,I(input),O(output)由此可以看出

STM32/AT32 MCO管脚输出时钟配置

前言:最近在学以太网通讯,发现RMII接口配置的时钟管脚有MCU自己输出,想要看看是怎么输出的,对此进行记录 1、交接项目项目上使用的是PA8管脚来输出时钟50MHZ,提供给上面refclk。先看手册PA8的复用功能具备将MCU时钟输出,又叫MCO时钟输出脚。2、配置输出下面我以AT32F407VGT7举例//PA8作为时钟输出引脚进行时钟的测试voidGPIO_Configuration(void){  GPIO_InitTypeGPIO_InitStructure;   RCC_APB2PeriphClockCmd(RCC_APB2PERIPH_AFIO,ENABLE);   RCC_AP

MCU最小系统原理图中四个问题详解——芯片中有很多电源管脚的原因(VDD/VSS/VBAT)、LC滤波、两级滤波、NC可切换元件

前言:本文对MCU最小系统原理图中的四个问题进行详解:芯片中有很多电源管脚的原因(VDD/VSS/VBAT)、LC滤波、两级滤波、NC可切换元件。本文以GD32F103C8T6最小系统原理图举例目录:芯片中有很多电源管脚的原因(VDD/VSS/VBAT)两级滤波LC滤波NC可切换元件本文以GD32F103C8T6最小系统原理图举例,如下图所示芯片中有很多电源管脚的原因(VDD/VSS/VBAT)芯片中有很多的电源管脚(VDD/VSS/VBAT),简而言之,原因如下:芯片作为一个大水池,水池很大,要放满水的时候,比如只在一个地方给它供水,水就会从这个地方开始慢慢扩散出去,那么势必会造成这个供水的

Xilinx FPGA管脚约束语法规则(UCF和XDC文件)

文章目录1.ISE环境(UCF文件)2.Vivado环境(XDC文件)本文介绍ISE和Vivado管脚约束的语句使用,仅仅是管脚和电平状态指定,不包括时钟约束等其他语法。ISE使用UCF文件格式,Vivado使用XDC文件,Vivado中的MIG_DDR管脚也是使用的UCF文件。1.ISE环境(UCF文件)ISE开发环境可以使用图形化分配界面PlanAhead工具,本文介绍手动编写约束语句的方式。信号的管脚和电平使用两条语句分别进行约束:NET"clk"LOC=T8;NET"led"LOC=D22;NET"led"LOC=D20;NET"clk"IOSTANDARD=LVCMOS33;NET"

STM32板子串口管脚与使用

1.STM32f1串口对应的管脚串口是我们常用的一个数据传输接口,STM32F103系列单片机共有5个串口,其中1-3是通用同步/异步串行接口USART,4,5是通用异步串行接口UART。对应的管脚如下图:2.配置串口配置串口包括的内容:1).配置对应的I/O口:将TX引脚配置为复用推挽输出(GPIO_Mode_AF_PP),将RX引脚配置为浮空输入(GPIO_Mode_IN_FLOATING)。2).配置串口:设置波特率、数据位、停止位等参数。3).配置中断向量:如果需要使用中断方式接收数据,配置对应的中断源和中断服务函数。4).打开对应串口的时钟:根据要使用的串口模块选择相应的时钟使能命令

Xilinx FPGA未使用管脚上下拉状态配置(ISE和Vivado环境)

文章目录ISE开发环境Vivado开发环境方式1:XDC文件约束方式2:生成选项配置ISE开发环境ISE开发环境,可在如下Bit流文件生成选项中配置。右键点击GenerateProgrammingFile,选择ProcessProperties,在弹出的窗口选择ConfigurationOptions->UnusedPin,选择PullDown、PullUp或者Float。可以看到,除了未使用管脚,一些系统管脚,比如JTAG,Program、Done管脚等等都可以配置上下拉模式。配置完成之后,重新生成Bit流文件即可。Vivado开发环境对于Vivado开发环境,共有两种方式可以设置未使用管脚

AD21 PCB设计的高级应用(四)FPGA的管脚交换功能

(四)FPGA的管脚交换功能高速PCB设计过程中,涉及的FPGA等可编程器件管脚繁多,也因此导致布线的烦琐与困难,AltiumDesigner可实现PCB中FPGA的管脚交换,方便走线。1.FPGA管脚交换的要求(1)一般情况下,相同电压的Bank之间是可以互调的。在设计过程中,要结合实际,有时要求在一个Bank内调整,就需要在设计之前确认好。(2)Bank内的VRN、VRP管脚若连接了上下拉电阻,不可调整。(3)全局时钟要放到全局时钟管脚的P端口。(4)差分信号的P.N需要对应正负,相互之间不可调整。2.FPGA管脚交换的步骤(1)选择需要调整的Bank,单击工具栏中“交叉探针”按钮,PCB

STM32的RTC管脚作为Tamper使用(RTC-TAMPER)

在学习STM32-RTC时,对入侵检测功能有很多不解;最大的困惑就是,这个东西有什么用?故作了以下笔记,欢迎指正:入侵检测描述:当TAMPER引脚上的信号从0变成1或者从1变成0(取决于备份控制寄存器BKP_CR的TPAL位),会产生一个侵入检测事件。侵入检测事件将所有数据备份寄存器内容清除。 根据上面的描述,个人进行了以下的应用场景猜想:猜想1:将程序关键变量X=Y保存到数据备份寄存器;开机后,读数据备份寄存器的值,如果X==Y则进入主功能;当竞争对手对产品进行拆解时,产生一个入侵检测事件,数据备份寄存器丢失(X!=Y),产品无法使用。不过直接应用产品风险过大;一般应用,入侵事件生成中断,停

【Xilinx FPGA】DDR3 MIG 时钟管脚分配

之前在验证FPGA板卡的芯片管脚时,所用的测试工程使用内部PLL生成的时钟作为DDR3的参考时钟。后来尝试将参考时钟改为外部100M晶振时钟,发现MIGIP配置工具找不到相应管脚,于是学习并梳理了 XilinxDDR3MIGIP时钟管脚的分配规则,在这里做个记录。 目录1MIG时钟输入2时钟管脚分配规则1MIG时钟输入    《ug586_7Series_MIS_v4.2》手册给出了XilinxDDR3MIG控制器IP内部时钟网络,如下图所示。可以看到MIGIP有2个时钟输入,分别是CLKREF 和SYSCK.    REFCLK频率为200MHz,输入到MIGIP内部的MMCM,然后选择20