嵌入式系统复习--概述

文章目录

  • 基本概念
  • 嵌入式系统的组成结构
  • 嵌入式操作系统
  • 嵌入式软件开发环境
  • 硬件基础简介
  • 下一篇

基本概念

嵌入式计算机:把嵌入到对象体系中、实现对象体系智能化控制的带有微控制器的计算机,称作嵌入式计算机

嵌入式系统:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。

特点:

  • 具有较长的生命周期
  • 嵌入式系统的目标代码通常固化在非易失性存储芯片中
  • 操作系统一般是实时操作系统(RTOS),具有实时约束
  • 需要专用开发工具和方法进行设计
  • 微处理器通常包含专用调试电路

分类:

  1. 按表现形式及使用硬件分为
    • 芯片级嵌入
    • 模块级嵌入
  2. 按系统实时性需求分为
    • 非实时系统(如PDA)
    • 软实时操作系统(如消费类产品)
    • 硬实时系统(工业实时控制系统)

嵌入式系统的组成结构

硬件基本结构:以嵌入式处理器为中心,配置存储器、I/O设备、通信模块以及电源等必要的辅助接口组成

软件基本结构:设备驱动层、实时操作系统(RTOS)、应用程序接口(API)层、实际应用程序层

启动程序BootLoader介绍

pc中的BIOS
嵌入式设备中的BootLoader

开机初始化处理器配置,初始化硬件等

  1. 系统加电复位后,CPU从由复位地址上取指令,将首先执行Boot Loader程序。
  2. 系统启动通常两种方式
    • 一种是可以直接从Flash启动
    • 另一种是可以将压缩的内存映像文件从Flash中复制、解压到RAM,在从RAM启动

嵌入式微处理器
对应pc中的CPU

嵌入式微控制器
又称单片机,它将CPU、存储器(少量RAM、ROM或两者都有)和其他外设封装在同一片集成电路里

与微处理器相比,特点是单片化,体积大大减少,从而是功耗和成本下降、可靠性提高。

嵌入式DSP
DSP(Digital Signal Processor)数字信号处理器

嵌入式SoC
SoC(System on Chip)系统级芯片

可编程片上系统–SOPC
技术基础:

  • 超大规模可编程逻辑器件及其开发工具的成熟
  • FPGA密度提高,成本大大下降,设计、综合、仿真、测试工具性能飞速提高
  • 微处理器/DSP以IP核的形式方便的嵌入FPGA中
  • 基于IP Core的开发深入人心

嵌入式外围接口电路和设备接口

  • 存储器类型(易失性存储器(RAM)、非易失性存储器(ROM、FLASH和NvRAM))
  • 输入输出设备
  • 通信接口
  • 设备扩展接口
  • 电源及辅助设备

嵌入式操作系统

必须提供以下管理功能

  1. 多任务管理
  2. 存储管理
  3. 周边资源管理
  4. 中断管理

嵌入式软件开发环境

  1. 交叉开发环境
  2. 软件模拟环境
  3. 评估电路板

嵌入式应用软件开发步骤:

  1. 开发环境建立
  2. 源文件编辑阶段
  3. 交叉编译
  4. 链接
  5. 重定位和下载
  6. 调试

为提高软件开发的可移植性和可重用性可采纳下列方法

  • 多用高级语言少用或者不用汇编语言
  • 将不可已知部分局部化
  • 宏定义和函数

硬件基础简介

冯洛伊曼体系结构
在这里插入图片描述
哈佛体系结构
在这里插入图片描述

  • CISC复杂指令集:

    • 具有大量指令和寻址方式
    • 8/2原则:80%的程序只使用20%的指令
    • 大多数程序只使用少量的指令就能够运行
  • RISC精简指令集

    • 在通道中只包含最有用的指令
    • 确保数据通道快速执行每一条指令
    • 使CPU硬件结构设计变得更加简单
  • 流水线技术:
    几个指令可以并行执行
    提高了CPU的运行效率
    内部信息流要求通常流动
    在这里插入图片描述

  • 桶型移位器
    通型移位器可以加快一维速度

  • 指令密度

    • 在执行同等操作步骤序列前提下,单位内存所容纳的机器指令数
    • 为完成特定的运算操作,存放机器指令所需的内存空间大小
    • 是衡量一个指令系统的设计是否精巧,是否合理的重要指标。
  • 看门狗定时器
    是用来引导嵌入式处理器脱离死锁工作状态的部件。是处理器的一个有用的特色硬部件。

嵌入式开发的考虑要素

  1. 功能可靠使用、便于升级
  2. 实时并发处理,即使响应
  3. 体积符合要求,结构紧凑
  4. 接口符合规范,易于操作
  5. 配置精简稳定,维护便利
  6. 功耗管理严格,成本低廉

下一篇

未完待续

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/238801.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

4年外包终上岸,我只能说这类公司能不去就不去......

我大学学的是计算机专业,毕业的时候,对于找工作比较迷茫,也不知道当时怎么想的,一头就扎进了一家外包公司,一干就是4年。现在终于跳槽到了互联网公司了,我想说的是,但凡有点机会,千万…

LeetCode-654. 最大二叉树【栈 树 数组 分治 二叉树 单调栈】

LeetCode-654. 最大二叉树【栈 树 数组 分治 二叉树 单调栈】 题目描述:解题思路一:递归,这个问题的难点在于如何找到每个子数组的最大值。此处用的是暴力查找最大值,然后递归构建左右子树。解题思路二:单调栈&#xf…

AOP跨模块捕获异常遭CGLIB拦截而继续向上抛出异常

其他系列文章导航 Java基础合集数据结构与算法合集 设计模式合集 多线程合集 分布式合集 ES合集 文章目录 其他系列文章导航 文章目录 前言 一、BUG详情 1.1 报错信息 1.2 接口响应信息 1.3 全局异常处理器的定义 二、排查过程 三、解决方案 四、总结 前言 最近&…

element table表格内进行表单验证(简单例子,一看就会,亲测有用~)开箱即用!!

效果图&#xff1a; 代码&#xff1a; <div> <el-form ref"form" :model"form" ><el-table :data"form.tableData" align"center" border><el-table-column label"名称"><template slot-scope&…

nuitka Unknown property box-shadow,transition,transform

nuitka 打包后&#xff0c;控制台的错误解决方法 nuitka --standalone --show-memory --show-progress --nofollow-imports --follow-import-toneed --output-dirout --windows-icon-from-ico./static/test.ico mainUI2.py 由于Qt样式表不是CSS&#xff0c;QSS基于CSS2.1&…

Java | Cannot resolve symbol ‘XXX‘

解决办法 (4种解决方案) 1、先检查pom文件依赖是否报错&#xff0c;报错需重新导入 2、检查jdk版本是否与导入项目的版本一致 Ctrlshiftalts打开 3、重启IDEA&#xff0c;清理缓存 IDEA 无法识别同一个 package 里的其他类&#xff0c;将其显示为红色&#xff0c;但…

【SpringBoot】入门精简

目录 一、初识 SpringBoot 1.1 介绍 1.2 项目创建 1.3 目录结构 1.4 修改配置 二、SpringBoot 集成 2.1 集成 Mybatis框架 2.2 集成 Pagehepler分页插件 2.3 集成 Druid数据库连接池 2.4 集成 Log日志管理 一、初识 SpringBoot 1.1 介绍 Spring Boot是一个用于简化Sp…

Vision Transformer模型架构详解

&#x1f380;个人主页&#xff1a; https://zhangxiaoshu.blog.csdn.net &#x1f4e2;欢迎大家&#xff1a;关注&#x1f50d;点赞&#x1f44d;评论&#x1f4dd;收藏⭐️&#xff0c;如有错误敬请指正! &#x1f495;未来很长&#xff0c;值得我们全力奔赴更美好的生活&…

搭建商城系统的构架如何选择?

近期有很多网友在csdn、gitee、知乎的评论区留言&#xff0c;搭建商城系统是选择单体架构还是微服务架构&#xff0c;这里先说结论&#xff0c;如果是纯电商的话&#xff0c;商城系统的架构建议选择单体架构。我们分析下微服务和单体架构的优劣势&#xff0c;就知道了。 一、什…

C语言——结构体

一、结构的基础知识 结构是一些值的集合&#xff0c;这些值称为成员变量结构的&#xff0c;每个成员可以是不同类型的变量。 二、结构的声明 struct tag {member-list; }variable-list; 描述一个学生&#xff1a; typedef struct Student {char name[20]; //姓名int age; …

Linux安装MySQL数据库系统

1、MySQL的编译安装。 1.1、准备工作 &#xff08;1&#xff09;为了避免发生端口冲突、程序冲突等现象&#xff0c;建议先查询MySQL软件的安装情况&#xff0c;确认没有使用以RPM方式安装的mysql-server、mysql软件包&#xff0c;否则建议将其卸载。 [rootlocalhost ~]# rp…

关系型数据库-SQLite介绍

优点&#xff1a; 1>sqlite占用的内存和cpu资源较少 2>源代码开源&#xff0c;完全免费 3>检索速度上十几兆、几十兆的数据库sqlite很快&#xff0c;但是上G的时候最慢 4>管理简单&#xff0c;几乎无需管理。灵巧、快速和可靠性高 5>功能简…

【产品设计】软件系统三基座之一:权限管理

不同的员工在公司享有不同的权限&#xff0c;用户可以访问而且只能访问自己被授权的资源。那么&#xff0c;权限管理功能要如何设计呢&#xff1f; 软件系统三基座包含&#xff1a;权限管理、组织架构、用户管理。 何为基座&#xff0c;即是有了这些基础&#xff0c;任一相关的…

边缘计算系统设计与实践

随着科技的飞速发展&#xff0c;物联网和人工智能两大领域的不断突破&#xff0c;我们看到了一种新型的计算模型——边缘计算的崛起。这种计算模型在处理大规模数据、实现实时响应和降低延迟需求方面&#xff0c;展现出了巨大的潜力。本文将深入探讨边缘计算系统的设计原理和实…

13、RockerMQ消息类型之广播与集群消息

RocketMq中提供两种消费模式&#xff1a;集群模式和广播模式。 集群模式 集群模式表示同一个消息会被同一个消费组中的消费者消费一次&#xff0c;消息被负载均衡分配到同一个消费者上的多个实例上。 还有另外一种平均的算法是AllocateMessageQueueAveragelyByCircle&#xff…

windows下docker环境安装

开启硬件虚拟化技术 win10中开启 Hyper-V Win10 下是否开启硬件虚拟化技术&#xff0c;在控制面板&#xff0c;启用 window 功能&#xff0c;找到 Hyper-V 选项&#xff0c;点勾选确认。如图&#xff1a; Windows 11 家庭中文版新增 Hyper-V选项 注意以下的解决方案来自win1…

带你手把手 解读 firejail 沙盒源码(0.9.72版本)目录和组件 (一)

文章目录 关于firejail 的介绍src 目录每个文件夹&#xff08;组件&#xff09;的意义文件目录树 关于firejail 的介绍 Firejail 是一个用于 Linux 系统的安全工具&#xff0c;它通过创建轻量级的沙箱环境来运行应用程序。这种沙箱环境将应用程序与系统其余部分隔离&#xff0…

openEuler 20.03 (LTS-SP2) aarch64 cephadm 部署ceph18.2.0【5】 添加osd存储节点

接上篇 openEuler 20.03 (LTS-SP2) aarch64 cephadm 部署ceph18.2.0【1】离线部署 准备基础环境-CSDN博客 openEuler 20.03 (LTS-SP2) aarch64 cephadm 部署ceph18.2.0【2】离线部署 podman配置registries 部署registry私服 准备离线镜像-CSDN博客 openEuler 20.03 (LTS-SP2…

Python手撕kmeans源码

参考了两篇文章 K-Means及K-Means算法Python源码实现-CSDN博客 使用K-means算法进行聚类分析_kmeans聚类分析结果怎么看-CSDN博客 # 定义kmeans类 from copy import deepcopy from sklearn.datasets import make_blobs import numpy as np import matplotlib.pyplot as pltc…

如何充分准备面试,迅速融入团队并在工作中取得卓越成就

首先&#xff0c;关于如何筹备面试&#xff0c;首先需要对所申请公司与职位进行深入的调查了解&#xff0c;并依据可能提出的面试问题预先准备相应的答案&#xff0c;并提前调试面试所需的仪器设备。同时&#xff0c;也要注重自身形象的塑造。更为关键的是 1. 在计算机领域的面…