k64 datasheet学习笔记1---概述

时间:2022-01-27 15:13:51

1.前言

k64 datasheet描述了Freescale MCU的特性、架构和编程模型,主要是面向使用MCU的系统架构和软件应用开发人员。

2.模块划分

datasheet主要按功能对模块进行划分,包括如下模块:

模块名称 模块说明
ARM® Cortex®-M4 core ARM Cotex M4 32-bit MCU core,加上DSP指令和基于ARMV7架构的单精度浮点单元
System  

系统集成模块?

电源管理和多模式控制

唤醒单元

杂项控制模块

Crossbar switch ?

存储保护单元

外设桥接

带有多路选择的DMA控制器

外接的watchdog监视器

watchdog

memories  

内部存储:(1)可编程的flash存储;

(2)FLEXNVM?  FLEXRAM?

      (3)Programming acceleration RAM 为了加速flash编程?

        (4)SRAM

外部存储或外设总线接口:FlexBUS

串行编程接口:EzPort

clocks

可从外部或内部产生多种时钟

系统晶振为MCU提供时钟源

RTC晶振主要为RTC提供时钟源

USB内部时钟用于USB操作

Security

CRC校验模块

硬件加密及随机数产生器

Analog

ADC

比较器

DAC

内部参考电压

bandgap参考电压(外部)

Timers

可编程延时模块

灵活的定时器

周期中断定时器

低功耗定时器

载波调制发射机?

独立的RTC

communitations

Ethernet MAC with IEEE 1588 capability

USB OTG controller with built-in FS/LS transceiver ?

USB device charger detect

USB voltage regulator

CAN

SPI

I2C

UART

Secured Digital host controller

I2S

Human-Machine Interfaces (HMI)

GPIO 控制器

3.ARM® Cortex®-M4 Core Modules

包含如下的部分:

  • ARM Cotex-M4

(1)Cotex-M4是ARM Cotex M系列的最新版本,基于ARMV7体系结构和Thumb-2指令集,向上兼容Cotex M3,M1,M0体系结构;

(2)Cotex M4引入了ARMV7 Thumb-2 DSP;

  • NVIC

(1)ARMV7异常模型,嵌套向量中断控制器,实现可重新分配的向量表,支持很多外部中断和一个不可屏蔽中断NMI,支持中段优先级;

(2)代替了shadow寄存器,NVIC包含了执行特定handler的函数地址,前16个函数入口被分配给内部使用,其它由SOC厂商定义;

  • AWIC

异步唤醒中断控制器是检测stop mode下的唤醒事件,向clock控制逻辑发信号来resume系统时钟,时钟restart后,观察pending中断执行中断和事件处理

  • Debug interfaces

基于ARM CoreSight™  体系结构,支持四种接口:IEEE 1149.1 JTAG, IEEE 1149.7 JTAG (cJTAG), Serial Wire Debug (SWD), ARM Real-Time Trace Interface 

4. System Modules

提供了如下的系统模块:

  • System integration module (SIM)

包含一些集成的逻辑和几种模块配置???

  • System mode controller (SMC)

为每种power mode的入口和出口提供了控制和保护,为用户提供了10种不同的模式来为用户提供功耗优化,包括上电reset(POR),

integrated low voltage detect (LVD) with reset (brownout) capability and selectable LVD trip points???

  • Low-leakage wakeup unit (LLWU)

允许设备通过不同的内部外设和外部pin将设备从low leakage power modes 唤醒

  • Miscellaneous control module (MCM)

包含一些集成逻辑和嵌入的trace buffer细节?

  • Crossbar switch (XBS)

XBS连接了总线master和总线slave,允许所有的总线master访问同步访问不同的总线 slave,当不同的总线master访问同一个slave时提供了仲裁机制

  • Memory protection unit (MPU)

MPU提供了内存保护和任务隔离,能同时为slave连接监控所有的master事务??

  • Peripheral bridges

用于转换XBS接口

  • DMA multiplexer (DMAMUX)

从多个DMA请求里选取少量送给DMA控制器

  • Direct memory access (DMA) controller

提供了可编程的通道配置在两个地址间传输8bit  16bit 32bit 和128bit数据

  • External watchdog monitor (EWM)

相对Software watchdog (WDOG) 是一种冗余机制,它监控外部或内部的失败的软件操作

  • Software watchdog (WDOG)

监控内部系统操作,一旦发生失败则执行reset,它可以使用一个1KHZ的低功耗晶振,并带有一个可编程的refresh窗口来检测程序流和系统频率之间的偏差?

5.Memories and Memory Interfaces

  • Flash memory

TODO

  • Flash memory controller

用于管理device和片上flash存储的接口

  • SRAM

内部系统 RAM,在VLLS2 low leakage mode,部分SRAM处于上电

  • System register file

32字节的寄存器文件,在所有的power mode都可以访问,由VDD上电

  • VBAT register file

32字节的寄存器文件,在所有的power mode都可以访问,由VBAT上电

  • Serial programming interface (EzPort)

和工业级的SPI flash memories使用的命令集相同(或其子集)的串行接口。提供了读、擦除、编程flash,编程完flash后boot系统的功能

  • FlexBus

外部总线接口,有多个独立的、用户可编程的片选信号可以选中外部的SRAM  EPROM PROM  EEPROM  FLASH或其它外设,8bit  16bit  32bit和16字节的line-size传输

6.Clocks

  • Multi-clock generator (MCG)

提供了如下的clock源:

(1)Phase-locked loop (PLL) — Voltage-controlled oscillator (VCO)
(2)Frequency-locked loop (FLL) — Digitally-controlled oscillator (DCO)
(3)Internal reference clocks — 可以作为片上外设的时钟源

  • 48 MHz Internal Reference Clock (IRC48M)

提供内部产生的时钟源,时钟恢复电路利用接收的USB数据流来校准内部晶振,使得内部晶振满足USB时钟的需求

  • System oscillator

产生MCU的参考时钟

  • Real-time clock oscillator

有独立的供电,支持32K晶振来用于RTC。可选定是可以代替系统晶振作为主晶振源

7.Security and Integrity modules

  • Cryptographic acceleration unit (CAU)

支持DES, 3DES, AES, MD5, SHA-1, and SHA-256 algorithms

  • Random number generator (RNG)

支持随机数产生的关键算法

  • Cyclic Redundancy Check (CRC)

TODO

8.Analog modules

  • 16-bit analog-to-digital converters (ADC)

TODO

  • Analog comparators (CMP)

TODO

  • 6-bit digital-to-analog converters (DAC)

TODO

  • 12-bit digital-to-analog converters (DAC)

TODO

  • Voltage reference (VREF)

9.Timer modules

  • Programmable delay block (PDB)

TODO

  • Flexible timer modules (FTM)

TODO

  • Periodic interrupt timers (PIT)

TODO

  • Low-power timer (LPTimer)

TODO

  • Carrier modulator timer (CMT)

TODO

  • Real-time clock (RTC)

TODO

  • IEEE 1588 timers

10.Communication interfaces

  • Ethernet MAC with IEEE 1588 capability(ENET)

TODO

  • USB OTG (low-/full-speed)

TODO

  • USB Device Charger Detect (USBDCD)

TODO

  • USB voltage regulator

TODO

  • Controller Area Network (CAN)

TODO

  • Serial peripheral interface (SPI)

TODO

  • Inter-integrated circuit (I2C)

TODO

  • Universal asynchronous receiver/transmitters (UART)

TODO

  • Secure Digital host controller (SDHC)

TODO

  • I2S

TODO

11.Human-machine interfaces

  • General purpose input/output (GPIO)