模块化设计出发点

在实际地操作中,总有一些基础的模块需要不断地寻找,往往需要消耗大量的时间。为了节约模块化设计的时间,提高设计的效率。在这里将一些基础的模块全部进行封装,利用网络的便捷性,实现快速地基础模块的调用。同时在这个过程中,利用FPGA的拓展性,实现代码的最大化利用。同时,也考虑到模块化封装需要不断地使用完善,所以这里也是一个不断地修订的过程。

模块化封装标准

  • 基于vscode完成markdown的导出
  • 编码规则同项目规则
  • 使用三层索引,用于加速实际使用
  • 大部分模块支持到仿真,少部分模块在线调试
  • 在实际应用中完成代码的封装流程

中文补充说明

  • 代码一般不包含中文
  • 额外的说明文档将在博客中补充
  • 中文补充的内容在模块封装的末尾

不定期修订

  • 由于模块维护的特性
  • 一般搭建完成骨架后
  • 各种功能可能需要不断地兼容
  • 但是总的框架基本上不会发生变化
  • 所以每当完成一个模块后
  • 会在应用兼容出现问题时
  • 对模块进行修订
  • 所以需要将模块按照作用进行分类
  • 以免由于修订导致整个的系列出现混乱

模块化设计作用

  • 一般来说,模块化设计只能实现一些小的功能,对技术的提高有限
  • 但是考虑到FPGA的生态环境还是比较初级,现有的代码难以满足各种小的需求,
  • 这个问题也和FPGA追求高速定制化以节约资源有关
  • 所以保持一定的模块化设计的强度,可以得到比较稳定的手感
  • 这样不至于由于一些事务性的工作阻碍设计的进度,从而降低整个的设计感受
  • 这就是这个模块训练的意义所在

FPGA模块化设计的更多相关文章

  1. FPGA重要设计思想

    FPGA重要设计思想   1.速度和面积互换原则.以面积换速度可以实现很高的数据吞吐率,其实串/并转换.就是一种以面积换速度的思想 2.乒乓操作. 3.串/并转换的思想. 高速数据处理的重要技巧之一. ...

  2. FPGA高级设计——时序分析和收敛(转)

    何谓静态时序分析(Static Timing Analysis,简称STA)? 它可以简单的定义为:设计者提出一些特定的时序要求(或者说是添加特定的时序约束),套用特定的时序模型,针对特定的电路进行分 ...

  3. iOS程序模块化设计

    一.模块化设计的概述: 模块化设计(Block-based design):对一定范围内的不同功能或相同功能的不同性能.不同规格的产品进行功能分析的基础上,划分并设计出一系列功能模块,通过模块的选择和 ...

  4. PHP--进行模块化设计

    PHP--进行模块化设计 [来源] 达内    [编辑] 达内   [时间]2012-10-30 导航模块可以简单列为一个关于三级页面链接的HTML文件.通常你可以通过用另一种颜色来标明对当前区域的链 ...

  5. FPGA/CPLD设计思想与技巧

    本文讨论的四种常用FPGA/CPLD设计思想与技巧:乒乓操作.串并转换.流水线操作.数据接口同步化,都是FPGA/CPLD逻辑设计的内在规律的体现,合理地采用这些设计思想能在FPGA/CPLD设计工作 ...

  6. 深入浅出百度地图API开发系列(3):模块化设计

    在前面两张简单介绍了百度地图API的基础知识和使用之后,我们来分析一下百度地图API的基本架构,了解一下基本架构可以帮助我们更清晰的了解API的功能和调用过程,也就可以帮助我们在实际开发中可以更方便的 ...

  7. AngularJs学习笔记7——四大特性之模块化设计

    模块化设计 1.引用自定义模块并调用 自定义模块中,如果有一些服务.封装好笑模块,在另外一个模块中(声明的时候,在依赖列表中加入要引入的模块) var app02 = angular.module(' ...

  8. C51的模块化设计方法

    一个大的单片机程序往往包含很多模块,我是这样组织的: 1.每一个C源文件都要建立一个与之名字一样的H文件(头文件),里面仅仅包括该C文件的函数的声明,其他的什么也不会有,比如变量的定义啊等等不应该有. ...

  9. thinkphp学习笔记5—模块化设计

    原文:thinkphp学习笔记5-模块化设计 1.模块结构 完整的ThinkPHP用用围绕模块/控制器/操作设计,并支持多个入口文件盒多级控制.ThinkPHP默认PATHINFO模式,如下: htt ...

  10. App 组件化/模块化之路——使用SDK的思路进行模块化设计接口

    在不久之前分享一篇<App 组件化/模块化之路——如何封装网络请求框架>文章介绍了我在项目中封装网络请求框架的思路.开发一个 App 会涉及到很多网络请求 API ,例如登录注册接口.用户 ...

随机推荐

  1. Activiti7 多实例子流程

    顾名思义,子流程是一个包含其他活动.网关.事件等的活动,这些活动本身形成了一个流程,该流程是更大流程的一部分. 使用子流程确实有一些限制: 一个子流程只能有一个none类型的启动事件,不允许有其他类型 ...

  2. Centos8 安装 MySQL8.0.26

    下载 访问 https://dev.mysql.com/downloads/mysql/ 选择 Red Hat Enterprise Linux / Oracle Linux 选择 Red Hat E ...

  3. SpringBoot+MyBatisPlus+Thymeleaf+AdminLTE增删改查实战

    说明 AdminLTE是网络上比较流行的一款Bootstrap模板,包含丰富的样式.组件和插件,非常适用于后端开发人员做后台管理系统. 因为最近又做了个后台管理系统,这次就选的是AdminLTE做主题 ...

  4. letcode-括号生成

    递归大法,空间换时间 就是记录左右括号数,一旦右括号数大于左括号数,退出. 当左右括号数相等,且等于n则为合法解. 使用char数组取代StringBuilder可以减少内存使用,这样每次进行回溯时不 ...

  5. leetcode 平衡二叉树

    给定一个二叉树,判断它是否是高度平衡的二叉树. 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 . 示例 1: 输入:root = [3,9,20,n ...

  6. 关于json序列化时报错json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

    1.今天在写客户端与服务端交互的程序的时候,发现了一个问题 客户端代码 #客户端程序主要是发送注册请求/登录请求给服务端,服务端接收响应后回应对应的应答给客户端,客户端接收响应后,然后做一些操作 # ...

  7. django学习第十五天-modelform的补充

    基于form组件和modelform组件改造图书管理系统 详情可以去图书管理系统分类中查看 基于form组件和modelform组件改造图书管理系统 modelform的补充 class BookMo ...

  8. cpu过高什么原因?怎么排查?

    运行大型程序或应用程序:当计算机运行大型程序或应用程序时,CPU需要处理更多的数据和指令,因此CPU占用率会相应地增加. 病毒或恶意软件:某些病毒或恶意软件会占用计算机的CPU资源来执行恶意任务,例如 ...

  9. 3. JVM运行时数据区

    1. 运行时数据区概述 前面的章节中已经将类的加载过程大致过程说清楚了,此时类已经加载到内存中,,后面就是运行时数据区的各个组件的工作了 由上图可以看出来, jvm将class字节码加载完成后,后面运 ...

  10. Java 常用类 JDK 8 之前日期和时间的API测试

    1 package com.bytezero.stringclass; 2 3 import org.junit.Test; 4 5 import java.util.Date; 6 7 8 /** ...