CN117873930A - 车规级域控mcu中多个can通信模块ram空间动态共享方法 - Google Patents
车规级域控mcu中多个can通信模块ram空间动态共享方法 Download PDFInfo
- Publication number
- CN117873930A CN117873930A CN202410078827.8A CN202410078827A CN117873930A CN 117873930 A CN117873930 A CN 117873930A CN 202410078827 A CN202410078827 A CN 202410078827A CN 117873930 A CN117873930 A CN 117873930A
- Authority
- CN
- China
- Prior art keywords
- ram space
- space
- vehicle
- module
- ram
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000002093 peripheral effect Effects 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 4
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,在系统总线和SRAM之间,增加一个CAN模块RAM空间动态共享控制单元,所述共享控制单元包含CAN访问控制配置寄存器单元和CAN访问控制逻辑单元,所述CAN访问控制配置寄存器单元提供一组寄存器,该车规级域控MCU中多个CAN通信模块RAM空间动态共享方法避免了系统中每个CAN模块分配一个固定的私有的RAM空间的情况。有效降低了生产成本,也保证了CAN模块对RAM空间使用的安全性和数据一致性,解决车规级域控MCU的多个CAN模块中RAM空间占用问题、芯片面积大小失控问题以及难以提高RAM的使用效率和灵活性的问题。
Description
技术领域
本发明涉及汽车芯片技术领域,具体为车规级域控MCU中多个CAN通信模块RAM空间动态共享方法。
背景技术
随着汽车电子电器架构的不断演进,汽车行业提出了域控制器的概念,通常由专门设计的车规级域控MCU实现。为满足域控制器的通信需求。通常车规级域控MCU需提供多达至少10个CAN通信模块,以保证在域控应用场景中提供足够数量的CAN通信节点。
在车规级域控MCU中通常有10多个CAN模块存在,而每个CAN模块需要配置独立的RAM存储器,假设以每个CAN模块配置最小32KB的RAM空间,则总共需要多达320KB的RAM存储器。
因此,现有的CAN模块技术方案存在如下明显缺点:每个CAN模块私有的RAM在芯片中占据极大的面积(320KB存储占据0.6个平方);每个CAN模块拥有私有的RAM,导致生产成本变大;每个CAN模块拥有私有的RAM只能被该CAN模块单独使用,在通常不需要太多CAN通信节点的应用场景中,这些RAM的使用效率极低。
发明内容
针对现有技术存在的不足,本发明目的是提供车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,以解决上述背景技术中提出的问题,本发明能够提高RAM存储器利用效率、有效降低芯片面积、极大降低芯片生产成本。同时满足车规级域控MCU中CAN模块的应用需求。
为了实现上述目的,本发明是通过如下的技术方案来实现:车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,在系统总线和SRAM之间,增加一个CAN模块RAM空间动态共享控制单元,所述共享控制单元包含CAN访问控制配置寄存器单元和CAN访问控制逻辑单元,所述CAN访问控制配置寄存器单元提供一组寄存器,每个CAN模块对应一组,每组包含两个32bit的寄存器,所述CAN访问控制逻辑单元基于CAN访问控制配置寄存器单元的配置信息,实现CAN模块对SRAM空间指定起始地址和大小的访问控制。
进一步的,所述SRAM为系统SRAM,所述系统SRAM可作为程序运行时内存使用。
进一步的,其中一个所述寄存器用于配置该CAN模块需要访问的SRAM空间的起始地址。
进一步的,另一个所述寄存器用于配置该CAN模块需要的SRAM空间大小,CPU可以读写操作CAN访问控制配置寄存器单元,以完成CAN模块RAM空间的动态共享配置。
进一步的,被分配给CAN模块的SRAM空间无法被CPU或者外设进行访问。
进一步的,增加CAN模块RAM空间动态共享控制单元后,软件中对CAN模块的初始化需要增加SRAM空间申请的操作流程。
进一步的,所述SRAM空间申请的操作流程包括以下步骤:步骤一、操作CANO访问控制寄存器配置CANO RAM空间起始地址;步骤二、操作CANO访问控制寄存器配置CANO RAM空间大小;步骤三、申请获得RAM分配;步骤四、检查是否成功申请到合法RAM空间;步骤五、完成CANO初始化;步骤六、操作CANO执行CAN通信。
进一步的,若未成功申请到合法RAM空间则返回步骤一。
进一步的,完成CAN通信后通过以下步骤释放分配给CAN0的SRAM空间:步骤一、停止CANO通信操作;步骤二、完成CANO去初始化操作;步骤三、操作CANO访问控制寄存器申请释放RAM空间;步骤四、检查是否成功释放RAM空间。
进一步的,若未成功释放RAM空间则重复步骤三过程。
本发明的有益效果:
1.该车规级域控MCU中多个CAN通信模块RAM空间动态共享方法实现了每个CAN模块对RAM空间的动态申请和释放,从而避免系统中每个CAN模块分配一个固定的私有的RAM空间的情况。该方案有效降低了生产成本,也保证了CAN模块对RAM空间使用的安全性和数据一致性。
2.该车规级域控MCU中多个CAN通信模块RAM空间动态共享方法通过在SRAM和多个CAN模块之间,增加一个CAN模块RAM空间动态共享控制单元。以低风险、可实现的方法,解决车规级域控MCU的多个CAN模块中RAM空间占用问题、芯片面积大小失控问题以及提高RAM的使用效率和灵活性的问题。
附图说明
图1为本发明车规级域控MCU中多个CAN通信模块RAM空间动态共享方法中SRAM空间申请的操作流程图;
图2为本发明中释放分配给CAN0的SRAM空间的流程图
图3为本发明车规级域控MCU中多个CAN通信模块的结构框图;
图4为本发明车规级域控MCU中整个系统的结构框架图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
请参阅图1至图4,本发明提供以下技术方案:车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,该动态共享方法中通过增加CAN模块RAM空间动态共享控制单元,实现每个CAN模块对RAM空间的动态申请和释放,从而避免系统中每个CAN模块分配一个固定的私有的RAM空间的情况,造成生产成本增加、RAM空间使用效率极低、芯片面积失控的弊端。同时,该方案也保证了CAN模块对RAM空间使用的安全性和数据一致性。
本实施例中具体通过以下内容实现:如图3所示,在系统总线和SRAM(该SRAM为系统SRAM,可用于程序运行时内存)之间,增加一个CAN模块RAM空间动态共享控制单元。
该单元内主要包含两个逻辑单元:
(1)CAN访问控制配置寄存器单元:该单元提供一组寄存器,每个CAN模块对应一组,每组包含两个32bit的寄存器。其中一个寄存器用于配置该CAN模块需要访问的SRAM空间的起始地址;另一个寄存器用于配置该CAN模块需要的SRAM空间大小。CPU可以读写操作这个逻辑单元,以完成CAN模块RAM空间的动态共享配置;
(2)CAN访问控制逻辑单元:该单元主要基于CAN访问控制配置寄存器单元的配置信息,实现CAN模块对SRAM空间指定起始地址和大小的访问控制。同时,被分配给某个CAN模块的SRAM空间,将不能被CPU或者别的外设所访问,以保护CAN模块的数据一致性和安全性。
在含有多个CAN模块的车载域控MCU中,增加CAN模块RAM空间动态共享控制单元后,整个系统的结构和框架如图4所示.
请参阅图1,增加CAN模块RAM空间动态共享控制单元,软件中对CAN模块的初始化需要增加SRAM空间申请的操作流程,具体流程如下:
1.1、操作CANO访问控制寄存器配置CANO RAM空间起始地址;
1.2、操作CANO访问控制寄存器配置CANO RAM空间大小;
1.3、申请获得RAM分配;
1.4、检查是否成功申请到合法RAM空间;
1.5、完成CANO初始化;
1.6、操作CANO执行CAN通信。
完成CAN通信后,通过执行如下流程释放分配给CAN0的SRAM空间,请参阅图2,具体流程如下:
2.1、停止CANO通信操作;
2.2、完成CANO去初始化操作;
2.3、操作CANO访问控制寄存器申请释放RAM空间;
2.4、检查是否成功释放RAM空间.
本实施例中通过在SRAM和多个CAN模块之间,增加一个CAN模块RAM空间动态共享控制单元。以低风险、可实现的方法,解决车规级域控MCU的多个CAN模块中RAM空间占用问题、芯片面积大小失控问题以及提高RAM的使用效率和灵活性的问题。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (10)
1.车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:在系统总线和SRAM之间增加一个CAN模块RAM空间动态共享控制单元,所述共享控制单元包含CAN访问控制配置寄存器单元和CAN访问控制逻辑单元,所述CAN访问控制配置寄存器单元提供一组寄存器,每个CAN模块对应一组寄存器,每组寄存器包含两个32bit的寄存器,所述CAN访问控制逻辑单元基于CAN访问控制配置寄存器单元的配置信息,实现CAN模块对SRAM空间指定起始地址和大小的访问控制。
2.根据权利要求1所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:所述SRAM为系统SRAM,所述系统SRAM可作为程序运行时内存使用。
3.根据权利要求1所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:其中一个所述寄存器用于配置该CAN模块需要访问的SRAM空间的起始地址。
4.根据权利要求3所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:另一个所述寄存器用于配置该CAN模块需要的SRAM空间大小,CPU可以读写操作CAN访问控制配置寄存器单元,以完成CAN模块RAM空间的动态共享配置。
5.根据权利要求1所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:被分配给CAN模块的SRAM空间无法被CPU或者外设进行访问。
6.根据权利要求1所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:增加CAN模块RAM空间动态共享控制单元后,软件中对CAN模块的初始化需要增加SRAM空间申请的操作流程。
7.根据权利要求6所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于,所述SRAM空间申请的操作流程包括以下步骤:步骤一、操作CANO访问控制寄存器配置CANO RAM空间起始地址;步骤二、操作CANO访问控制寄存器配置CANO RAM空间大小;步骤三、申请获得RAM分配;步骤四、检查是否成功申请到合法RAM空间;步骤五、完成CANO初始化;步骤六、操作CANO执行CAN通信。
8.根据权利要求7所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:若未成功申请到合法RAM空间则返回步骤一。
9.根据权利要求1所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于,完成CAN通信后通过以下步骤释放分配给CAN0的SRAM空间:步骤一、停止CANO通信操作;步骤二、完成CANO去初始化操作;步骤三、操作CANO访问控制寄存器申请释放RAM空间;步骤四、检查是否成功释放RAM空间。
10.根据权利要求9所述的车规级域控MCU中多个CAN通信模块RAM空间动态共享方法,其特征在于:若未成功释放RAM空间则重复步骤三过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410078827.8A CN117873930A (zh) | 2024-01-19 | 2024-01-19 | 车规级域控mcu中多个can通信模块ram空间动态共享方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410078827.8A CN117873930A (zh) | 2024-01-19 | 2024-01-19 | 车规级域控mcu中多个can通信模块ram空间动态共享方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117873930A true CN117873930A (zh) | 2024-04-12 |
Family
ID=90582892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410078827.8A Pending CN117873930A (zh) | 2024-01-19 | 2024-01-19 | 车规级域控mcu中多个can通信模块ram空间动态共享方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117873930A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108880965A (zh) * | 2018-05-24 | 2018-11-23 | 秦民 | 一种用于自动驾驶汽车的动力can网关及其实现方法 |
CN112953853A (zh) * | 2021-02-05 | 2021-06-11 | 井芯微电子技术(天津)有限公司 | 共享缓存系统及方法、电子设备及存储介质 |
CN115033394A (zh) * | 2022-05-23 | 2022-09-09 | 深圳市航顺芯片技术研发有限公司 | 一种多核mcu访问共享外设的控制系统及相关设备 |
CN116633987A (zh) * | 2023-05-26 | 2023-08-22 | 珠海格力电器股份有限公司 | 设备控制系统、方法、装置、电子设备和存储介质 |
CN116680088A (zh) * | 2023-08-03 | 2023-09-01 | 青岛本原微电子有限公司 | 一种针对多寄存器存储的多模块同时访问系统及访问方法 |
-
2024
- 2024-01-19 CN CN202410078827.8A patent/CN117873930A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108880965A (zh) * | 2018-05-24 | 2018-11-23 | 秦民 | 一种用于自动驾驶汽车的动力can网关及其实现方法 |
CN112953853A (zh) * | 2021-02-05 | 2021-06-11 | 井芯微电子技术(天津)有限公司 | 共享缓存系统及方法、电子设备及存储介质 |
CN115033394A (zh) * | 2022-05-23 | 2022-09-09 | 深圳市航顺芯片技术研发有限公司 | 一种多核mcu访问共享外设的控制系统及相关设备 |
CN116633987A (zh) * | 2023-05-26 | 2023-08-22 | 珠海格力电器股份有限公司 | 设备控制系统、方法、装置、电子设备和存储介质 |
CN116680088A (zh) * | 2023-08-03 | 2023-09-01 | 青岛本原微电子有限公司 | 一种针对多寄存器存储的多模块同时访问系统及访问方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3757782A1 (en) | Data accessing method and apparatus, device and medium | |
CN105556503A (zh) | 动态的存储器控制方法及其系统 | |
CN112000594B (zh) | 一种PCIe设备管理方法及其运行系统 | |
CN117148817B (zh) | 一种测试系统 | |
CN115756767A (zh) | 一种用于多核cpu原子操作内存的装置及方法 | |
CN105630599A (zh) | 基于32/64位混合操作系统的显存分配方法及装置 | |
CN117873930A (zh) | 车规级域控mcu中多个can通信模块ram空间动态共享方法 | |
CN103907108A (zh) | 共享闪存的方法、控制器及系统 | |
CN117215491A (zh) | 一种快速数据访问方法、快速数据访问装置及光模块 | |
EP4432210A1 (en) | Data processing method and apparatus, electronic device, and computer-readable storage medium | |
US20220197545A1 (en) | Data access system and method | |
CN115237602B (zh) | 一种归一化ram及其分配方法 | |
CN116069508A (zh) | 线程簇的资源分配方法、装置、芯片及电子设备 | |
CN113157602B (zh) | 一种对内存进行分配的方法、设备及计算机可读存储介质 | |
CN210244341U (zh) | 多处理器仿真调试开发平台 | |
CN115729627A (zh) | 线程同步方法及装置、芯片仿真方法及平台、相关设备 | |
JP2003150395A (ja) | プロセッサとそのプログラム転送方法 | |
CN101482853A (zh) | 直接存储器访问系统及方法 | |
JPH05314248A (ja) | レジスタ・アクセス制御方式 | |
US7533204B2 (en) | Enumeration of devices on a memory channel | |
US11429523B2 (en) | Two-way interleaving in a three-rank environment | |
CN110765721A (zh) | Soc芯片加速验证方法、装置、计算机设备及存储介质 | |
CN115203089A (zh) | 一种处理器内部存储访问结构及访问方法 | |
CN114461391A (zh) | 一种可重映射的gpu主存访问管理方法和系统 | |
JPH1040169A (ja) | コンピュータシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |