fpga控制dsp6657上电启动配置

2024-06-01 15:04

本文主要是介绍fpga控制dsp6657上电启动配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 Verilog代码

 dspboot_config.v

`timescale 1ns / 1ps
//dsp上电启动配置
module dspboot_config (///时钟和复位input         SYS_CLK_50MHz,input         SYS_RST_n,//DSP启动配置output        DSP_POR,output        DSP_RESETFULL,output        DSP_RESET,inout  [12:0] DSP_BOOTMODE,inout         DSP_LENDIAN
);wire sys_reset_n;reg [27:0] delay_counter;reg [1:0] counter;reg clk_25m;reg dsp_boot_en;reg DSP_PRO_reg;reg DSP_RESETFULL_reg;assign sys_reset_n = SYS_RST_n;assign DSP_RESET = SYS_RST_n;  //DSP复位接口assign DSP_LENDIAN = dsp_boot_en ? 1'b1 : 1'bz;  //决定DSP的大小端,1工作在小端模式,0工作在大端模式//assign DSP_BOOTMODE = dsp_boot_en ? 13'b0110000000000 : 13'hz;//决定DSP的启动模式assign DSP_BOOTMODE = dsp_boot_en ? 13'b0000000000000 : 13'hz;  //noboot模式(调试模式)assign DSP_POR = DSP_PRO_reg;assign DSP_RESETFULL = DSP_RESETFULL_reg;always @(posedge SYS_CLK_50MHz or negedge sys_reset_n) beginif (!sys_reset_n) beginclk_25m <= 0;counter <= 0;end else if (counter == 1) beginclk_25m <= ~clk_25m;  //生成25Mhz时钟counter <= 0;end else begincounter <= counter + 1;endendalways @(posedge clk_25m or negedge sys_reset_n)if (!sys_reset_n) begindelay_counter <= 28'h0;end else if (delay_counter <= 2000000) begindelay_counter <= delay_counter + 28'h1;end else begindelay_counter <= delay_counter;endalways @(posedge clk_25m or negedge sys_reset_n)if (!sys_reset_n) beginDSP_PRO_reg <= 1'b0;end else if (delay_counter == 1565500) beginDSP_PRO_reg <= 1'b1;end else beginDSP_PRO_reg <= DSP_PRO_reg;endalways @(posedge clk_25m or negedge sys_reset_n)if (!sys_reset_n) beginDSP_RESETFULL_reg <= 1'b0;end else if (delay_counter == 1631000) beginDSP_RESETFULL_reg <= 1'b1;end else beginDSP_RESETFULL_reg <= DSP_RESETFULL_reg;endalways @(posedge clk_25m or negedge sys_reset_n)if (!sys_reset_n) begindsp_boot_en <= 1'b0;end else if ((delay_counter > 1620000) & (delay_counter < 1640000)) begindsp_boot_en <= 1'b1;end else begindsp_boot_en <= 1'b0;endendmodule

2 引脚约束(v5)

pin.ucf 


NET "SYS_CLK_50MHz" LOC = AM16;
NET "SYS_CLK_50MHz" PERIOD = 20 ns HIGH 50 %;
NET "SYS_RST_n" LOC = AH34;NET "DSP_POR" LOC = H9;
NET "DSP_LENDIAN" LOC = E8;
NET "DSP_RESET" LOC = AG7;
NET "DSP_RESETFULL" LOC = K7;
NET "DSP_BOOTMODE[0]" LOC = F9;
NET "DSP_BOOTMODE[1]" LOC = E9;
NET "DSP_BOOTMODE[2]" LOC = D7;
NET "DSP_BOOTMODE[3]" LOC = L5;
NET "DSP_BOOTMODE[4]" LOC = E7;
NET "DSP_BOOTMODE[5]" LOC = K4;
NET "DSP_BOOTMODE[6]" LOC = K5;
NET "DSP_BOOTMODE[7]" LOC = F6;
NET "DSP_BOOTMODE[8]" LOC = F7;
NET "DSP_BOOTMODE[9]" LOC = E5;
NET "DSP_BOOTMODE[10]" LOC = H5;
NET "DSP_BOOTMODE[11]" LOC = J5;
NET "DSP_BOOTMODE[12]" LOC = F5;

这篇关于fpga控制dsp6657上电启动配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1021330

相关文章

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

IDEA连接达梦数据库的详细配置指南

《IDEA连接达梦数据库的详细配置指南》达梦数据库(DMDatabase)作为国产关系型数据库的代表,广泛应用于企业级系统开发,本文将详细介绍如何在IntelliJIDEA中配置并连接达梦数据库,助力... 目录准备工作1. 下载达梦JDBC驱动配置步骤1. 将驱动添加到IDEA2. 创建数据库连接连接参数

Spring Security注解方式权限控制过程

《SpringSecurity注解方式权限控制过程》:本文主要介绍SpringSecurity注解方式权限控制过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、摘要二、实现步骤2.1 在配置类中添加权限注解的支持2.2 创建Controller类2.3 Us

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

MyBatis的配置对象Configuration作用及说明

《MyBatis的配置对象Configuration作用及说明》MyBatis的Configuration对象是MyBatis的核心配置对象,它包含了MyBatis运行时所需的几乎所有配置信息,这个对... 目录MyBATis配置对象Configuration作用Configuration 对象的主要作用C

IDEA与JDK、Maven安装配置完整步骤解析

《IDEA与JDK、Maven安装配置完整步骤解析》:本文主要介绍如何安装和配置IDE(IntelliJIDEA),包括IDE的安装步骤、JDK的下载与配置、Maven的安装与配置,以及如何在I... 目录1. IDE安装步骤2.配置操作步骤3. JDK配置下载JDK配置JDK环境变量4. Maven配置下

Python中如何控制小数点精度与对齐方式

《Python中如何控制小数点精度与对齐方式》在Python编程中,数据输出格式化是一个常见的需求,尤其是在涉及到小数点精度和对齐方式时,下面小编就来为大家介绍一下如何在Python中实现这些功能吧... 目录一、控制小数点精度1. 使用 round() 函数2. 使用字符串格式化二、控制对齐方式1. 使用

Springboot的自动配置是什么及注意事项

《Springboot的自动配置是什么及注意事项》SpringBoot的自动配置(Auto-configuration)是指框架根据项目的依赖和应用程序的环境自动配置Spring应用上下文中的Bean... 目录核心概念:自动配置的关键特点:自动配置工作原理:示例:需要注意的点1.默认配置可能不适合所有场景

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

Springboot控制反转与Bean对象的方法

《Springboot控制反转与Bean对象的方法》文章介绍了SpringBoot中的控制反转(IoC)概念,描述了IoC容器如何管理Bean的生命周期和依赖关系,它详细讲解了Bean的注册过程,包括... 目录1 控制反转1.1 什么是控制反转1.2 SpringBoot中的控制反转2 Ioc容器对Bea