CN114785634A - 一种在hil测试过程中对can通讯系统传输的数据进行crc校验的实现方法 - Google Patents
一种在hil测试过程中对can通讯系统传输的数据进行crc校验的实现方法 Download PDFInfo
- Publication number
- CN114785634A CN114785634A CN202210469192.5A CN202210469192A CN114785634A CN 114785634 A CN114785634 A CN 114785634A CN 202210469192 A CN202210469192 A CN 202210469192A CN 114785634 A CN114785634 A CN 114785634A
- Authority
- CN
- China
- Prior art keywords
- message
- crc
- byte
- vcu
- sent
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明涉及一种在HIL测试过程中对CAN通讯系统传输的数据进行CRC校验的实现方法,该方法包括的步骤为:S01,对于VCU发送至各路CAN上各个节点控制器的报文,对CAN上接收的报文数据进行CRC计算,将计算结果校验码记为CRCRX,然后将CRCRX与VCU发出的报文数据的校验码CRCTX进行比对,如果不相等,则通讯过程中存在数据被改变;S02,对于各路CAN上各个节点控制器发送至VCU的报文,对各路CAN发送的报文数据进行CRC计算,并将计算所得校验码存放于规定的字节,最后发送至VCU进行校验,当各路CAN发送的报文数据与VCU接收到的报文数据不一致时,上报CRC故障相应故障码;在HIL测试过程中,针对三种形式的报文,本发明皆可有效确保通讯传输过程中数据的准确性。
Description
技术领域
本发明属于CAN通讯系统数据传输技术领域,具体涉及在HIL测试过程中对CAN通讯系统传输的数据进行CRC校验的实现技术。
背景技术
随着电动化、网联化、智能化成为汽车产业发展潮流和趋势的同时,与推动了汽车通讯技术的快速发展,CAN网络采用广播式的信息传输方式,且通讯的实时性强,传输速率块,抗干扰能力强,是当下最为流行的汽车通讯技术。
在汽车工业与通讯技术加速融合的同时,用于汽车控制的ECU数量逐渐增多,各控制器节点间的交互信息成倍增长。
为了确保在HIL测试过程中,如何确保通讯传输过程中数据的准确性,时研发人员面临的重要课题。
发明内容
本发明的目的是提供一种在HIL测试过程中对CAN通讯系统传输的数据进行CRC校验的实现方法,解决的技术问题:在HIL测试过程中,没有一种机制可确保通讯传输过程中数据的准确性。
为解决上述技术问题,本发明采用的技术方案为:一种在HIL测试过程中对CAN通讯系统传输的数据进行CRC校验的实现方法,
在HIL测试过程中,通过CRC算法同时对CAN通讯系统中的三类传输报文中的任何一类传输报文进行校验,其中,三类传输报文分别为VCU发送至各路CAN上各个节点控制器的报文、各路CAN上各个节点控制器发送至VCU的报文及不同路CAN上各个节点通过网关转发实现交互的报文;
如果CRC算法判断传输报文是VCU发送至各路CAN上各个节点控制器的报文,对CAN上接收的报文数据进行CRC计算,将计算结果校验码记为CRCRX,然后将CRCRX与VCU发出的报文数据的校验码CRCTX进行比对,如果不相等,则判定通讯过程中存在数据被改变;
如果CRC算法判断传输报文是各路CAN上各个节点控制器发送至VCU的报文,对各路CAN发送的报文数据进行CRC计算,并将计算所得校验码存放于规定的字节,最后发送至VCU进行校验,当各路CAN发送的报文数据与VCU接收到的报文数据不一致时,上报CRC故障相应故障码;
如果CRC算法判断传输报文是不同路CAN上各个节点通过网关转发实现交互的报文,对发送CAN上发出的报文进行CRC计算,得到发出报文数据校验码,在接收CAN上对接收的报文进行CRC计算,得到接收报文数据校验码,当发出报文数据校验码与接收报文数据校验码不相等时,则判定GW在转发报文时出现错误导致报文转发前后报文数据不一致;对于发送的CANFD报文转发为多帧CAN报文,对CANFD报文的每7字节数据做一次分段CRC计算,在接收端对切分后的CAN报文进行校验。
优选地,
当所述VCU发送传统CAN报文时,在CAN的接收端调用CRC8算法,对地0字节到第6字节计算出校验码并存储于第7字节;当所述VCU发送CANFD报文时,根据通讯协议将第0字节至第61字节数据调用CRC16算法计算出校验码存储于第62和63字节;当所述VCU接收到的为CAN报文,则对地0字节至第七字节调用CRC8算法计算校验码,当收到的为CANFD报文,则对第0字节至第61字节调用CRC16算法。
优选地,
所述CRC16算法的运算流程为:
A01,取出报文第0字节的8位二进制数据,左移八位,与crcl的初始值0xFFFF做异或运算,得到结果crcl,其中,每次异或的结果都赋值给crcl;
A02,将结果左移一位,低位补0,如果移出的高位为1,则将左移一位的新crcl结果与CRC16多项式0x1021做异或运算,如果移出的高位为0,继续左移一位,直到左移满8次;
A03,将左移满8次的最新crcl,与报文第2字节,重复A01与A02的操作,直到第61个字节都计算完成,得到最终的crcl值与0x0000做异或得到最终校验码。
优选地,
对于两路CAN之间通过网关转发的报文,若是传统CAN转发至传统CAN,采用CRC8算法分别对转发前后的报文数据进行校验;若是由CANFD转发至CANFD,则采用CRC16算法进行校验;若是CANFD转发至传统CAN,则在CANFD发送端采用分段CRC8算法进行计算,在传统CAN接收端采用CRC8算法进行校验。
通过采用上述技术方案,本发明可达到的有益技术效果为:在HIL测试过程中,针对三种形式的报文,本发明皆可提供对应的CRC算法对传输报文进行校验,本发明的适用场景多,可有效确保通讯传输过程中数据的准确性。
附图说明
图1是使用CAPL语言编写具体的CRC算法的运算流程示意图,以CRC16为例;
图2是VCU将报文发送至某路CAN上的CRC校验的示意图;
图3是某路CAN将报文发送至VCU的CRC校验示意图;
图4为两路CAN间报文发送与接收的CRC校验示意图。
具体实施方式
下面结合附图对本发明作进一步说明。
本发明提供一种在HIL测试过程中对CAN通讯系统传输的数据进行CRC校验的实现方法,该方法基于CANoe测试台架CAPL编写工具的应用,该工具可以对节点上的ECU进行编程,不仅可以模拟CAN总线上报文的发送与接收,还可对报文的数据内容进行编辑,本发明使用CAPL语言对各节点发送和接收的报文数据通过编写的算法进行编写设计,实现校验功能。
在HIL测试中,实现CRC校验功能的基础是建立完整的HIL测试工程。首先,建立HIL台架上位机工程文件,搭建驾驶员及整车环境的Simulink数学模型,然后将模型中的接口变量与协议中对应信号或CANoe工程的系统变量进行关联,其次,在GUI界面加入整车上下电信号,再加载DBC文件,载入DBC后即可在Configuration界面出现通讯协议中的各个节点,使用CAPL工具对各个节点进行编辑。
CAN网络传输的报文按照传输路径可分为三类,第一类为SVDC(域控制器)中VCU发送至各路CAN上各个节点控制器的报文,第二类为各路CAN上各个节点控制器发送至VCU的报文,第三类为不同路CAN上各个节点通过网关转发实现交互的报文。
由于在当前整车CAN网络中,存在着传统CAN与CANFD共存的情况,CANFD最大可传输64字节的报文,而传统CAN最大只能传输8字节的报文数据,因此,当CANFD与CAN通讯时,网关需要将CANFD报文数据切分为多个传统CAN报文进行转发,此时就涉及到CANFD的CRC分段校验,同时,还需确保GW切分转发后的CRC校验码与分段前一致,且随着报文数据的增多,将涉及到大量分段转发,若出现计算失误或网关负载过大,将导致转发数据错误从而导致通讯故障。
本发明针对上述三类报文数据,首先对于VCU发送至各路CAN的报文,由于VCU在开发过程中已对VCU发出的报文数据做CRC计算,且将计算结果即校验码记为CRCTX放在相应字节,因此,在HIL测试中,只需对CAN上接收的报文数据再次进行CRC计算,然后将计算结果即校验码记为CRCRX,当CRCTX与CRCRX不相等时,即通讯过程中存在数据被改变;其次,对于各路CAN发送至VCU的报文,同样,VCU已开发校验功能,在HIL测试时,只需在各路CAN报文发送时,对发送数据进行CRC计算,并将计算所得校验码存放于规定字节,最后发送至VCU进行校验,当各路CAN节点发送的报文与VCU接收到的报文数据不一致时,系统将上报CRC故障相应故障码;最后,对于各路CAN通过网关转发实现交互的这类报文,在HIL测试时,需要对发送CAN上发出的报文计算CRC校验码并记为CRCTX,在接收CAN上对接收的报文计算CRC校验码记为CRCRX,当CRCTX与CRCRX不相等时,说明GW在转发报文时出现错误导致报文转发前后报文数据不一致,而对于发送的CANFD报文转发为多帧CAN报文,同样只需对CANFD报文的没7字节数据做一次分段CRC计算,同理在接收端对切分后的CAN报文进行校验。
具体地,如图1所示,首先使用CAPL工具编写CRC算法,将其作为一个函数,在报文发送端报文发出时可直接调用,由于当前存在着传统CAN与CANFD共存的情况,需根据通讯协议,根据不同类型的CAN报文采用不同的CRC算法。
如图2所示,当VCU发送传统CAN报文,在CAN的接收端则调用CRC8算法,对第0字节到第6字节计算出一个校验码存储于第7字节;当VCU发送CANFD报文,根据通讯协议将第0字节至第61字节数据调用CRC16算法计算出校验码存储于第62和63字节。
如图3所示,当VCU接收到的为CAN报文,则对第0字节至第7字节调用CRC8算法计算校验码,当收到的为CANFD报文,则对第0字节至第61字节调用CRC16算法。
如图4所示,对于两路CAN之间通过网关转发的报文,若是传统CAN转发至传统CAN,则采用CRC8算法分别对转发前后的报文数据进行校验;若是由CANFD转发至CANFD,则采用CRC16算法进行校验;若是CANFD转发至传统CAN,则在CANFD发送端进行采用分段CRC8算法进行计算,在传统CAN接收端同样采用CRC8算法进行校验。
如图1所述,是CRC16算法的运算流程图,CRC16算法的运算流程为:
A01,取出报文第0字节的8位二进制数据,左移八位,与crcl的初始值0xFFFF做异或运算,得到结果crcl,其中,每次异或的结果都赋值给crcl。
A02,将结果左移一位,低位补0,如果移出的高位为1,则将左移一位的新crcl结果与CRC16多项式0x1021做异或运算,如果移出的高位为0,继续左移一位,直到左移满8次。
A03,将左移满8次的最新crcl,与报文第2字节,重复A01与A02的操作,直到第61个字节都计算完成,得到最终的crcl值与0x0000做异或得到最终校验码。
Claims (4)
1.一种在HIL测试过程中对CAN通讯系统传输的数据进行CRC校验的实现方法,其特征在于,
在HIL测试过程中,通过CRC算法同时对CAN通讯系统中的三类传输报文中的任何一类传输报文进行校验,其中,三类传输报文分别为VCU发送至各路CAN上各个节点控制器的报文、各路CAN上各个节点控制器发送至VCU的报文及不同路CAN上各个节点通过网关转发实现交互的报文;
如果CRC算法判断传输报文是VCU发送至各路CAN上各个节点控制器的报文,对CAN上接收的报文数据进行CRC计算,将计算结果校验码记为CRCRX,然后将CRCRX与VCU发出的报文数据的校验码CRCTX进行比对,如果不相等,则判定通讯过程中存在数据被改变;
如果CRC算法判断传输报文是各路CAN上各个节点控制器发送至VCU的报文,对各路CAN发送的报文数据进行CRC计算,并将计算所得校验码存放于规定的字节,最后发送至VCU进行校验,当各路CAN发送的报文数据与VCU接收到的报文数据不一致时,上报CRC故障相应故障码;
如果CRC算法判断传输报文是不同路CAN上各个节点通过网关转发实现交互的报文,对发送CAN上发出的报文进行CRC计算,得到发出报文数据校验码,在接收CAN上对接收的报文进行CRC计算,得到接收报文数据校验码,当发出报文数据校验码与接收报文数据校验码不相等时,则判定GW在转发报文时出现错误导致报文转发前后报文数据不一致;对于发送的CANFD报文转发为多帧CAN报文,对CANFD报文的每7字节数据做一次分段CRC计算,在接收端对切分后的CAN报文进行校验。
2.根据权利要求1所述的方法,其特征在于,
当所述VCU发送传统CAN报文时,在CAN的接收端调用CRC8算法,对地0字节到第6字节计算出校验码并存储于第7字节;当所述VCU发送CANFD报文时,根据通讯协议将第0字节至第61字节数据调用CRC16算法计算出校验码存储于第62和63字节;当所述VCU接收到的为CAN报文,则对地0字节至第七字节调用CRC8算法计算校验码,当收到的为CANFD报文,则对第0字节至第61字节调用CRC16算法。
3.根据权利要求2所述的方法,其特征在于,
所述CRC16算法的运算流程为:
A01,取出报文第0字节的8位二进制数据,左移八位,与crcl的初始值0xFFFF做异或运算,得到结果crcl,其中,每次异或的结果都赋值给crcl;
A02,将结果左移一位,低位补0,如果移出的高位为1,则将左移一位的新crcl结果与CRC16多项式0x1021做异或运算,如果移出的高位为0,继续左移一位,直到左移满8次;
A03,将左移满8次的最新crcl,与报文第2字节,重复A01与A02的操作,直到第61个字节都计算完成,得到最终的crcl值与0x0000做异或得到最终校验码。
4.根据权利要求1所述的方法,其特征在于,
对于两路CAN之间通过网关转发的报文,若是传统CAN转发至传统CAN,采用CRC8算法分别对转发前后的报文数据进行校验;若是由CANFD转发至CANFD,则采用CRC16算法进行校验;若是CANFD转发至传统CAN,则在CANFD发送端采用分段CRC8算法进行计算,在传统CAN接收端采用CRC8算法进行校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210469192.5A CN114785634B (zh) | 2022-04-30 | 2022-04-30 | 一种在hil测试过程中对can通讯系统传输的数据进行crc校验的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210469192.5A CN114785634B (zh) | 2022-04-30 | 2022-04-30 | 一种在hil测试过程中对can通讯系统传输的数据进行crc校验的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114785634A true CN114785634A (zh) | 2022-07-22 |
CN114785634B CN114785634B (zh) | 2023-05-02 |
Family
ID=82435701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210469192.5A Active CN114785634B (zh) | 2022-04-30 | 2022-04-30 | 一种在hil测试过程中对can通讯系统传输的数据进行crc校验的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114785634B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115378834A (zh) * | 2022-08-10 | 2022-11-22 | 东风柳州汽车有限公司 | 一种基于硬件在环设备的多网段网关路由测试方法及装置 |
CN116667971A (zh) * | 2023-07-28 | 2023-08-29 | 常州星宇车灯股份有限公司 | Can数据报文发送校验方法、装置、计算机设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102011017539A1 (de) * | 2011-04-26 | 2012-10-31 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur an Speichergrößen angepassten seriellen Datenübertragung |
CN111104272B (zh) * | 2019-12-10 | 2023-04-18 | 北京振兴计量测试研究所 | 一种基于rx和tx的can总线控制器测试方法 |
CN110941218B (zh) * | 2019-12-10 | 2021-02-26 | 北京振兴计量测试研究所 | 一种can总线控制器测试方法 |
CN113495545A (zh) * | 2020-03-18 | 2021-10-12 | 纬湃科技投资(中国)有限公司 | 使用在环硬件测试车辆设备控制器的系统和方法 |
CN112947371B (zh) * | 2021-02-05 | 2022-08-19 | 北京经纬恒润科技股份有限公司 | 测试报文的仿真测试方法、装置及仿真测试设备 |
CN113867318B (zh) * | 2021-09-30 | 2023-07-18 | 东风汽车集团股份有限公司 | Can通讯控制器硬件在环测试工程的自动化集成方法 |
-
2022
- 2022-04-30 CN CN202210469192.5A patent/CN114785634B/zh active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115378834A (zh) * | 2022-08-10 | 2022-11-22 | 东风柳州汽车有限公司 | 一种基于硬件在环设备的多网段网关路由测试方法及装置 |
CN115378834B (zh) * | 2022-08-10 | 2024-01-09 | 东风柳州汽车有限公司 | 一种基于硬件在环设备的多网段网关路由测试方法及装置 |
CN116667971A (zh) * | 2023-07-28 | 2023-08-29 | 常州星宇车灯股份有限公司 | Can数据报文发送校验方法、装置、计算机设备及存储介质 |
CN116667971B (zh) * | 2023-07-28 | 2023-10-27 | 常州星宇车灯股份有限公司 | Can数据报文发送校验方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114785634B (zh) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114785634A (zh) | 一种在hil测试过程中对can通讯系统传输的数据进行crc校验的实现方法 | |
CN110445635B (zh) | 控制报文发送方法、装置及总线仿真测试系统 | |
CN109936376B (zh) | 按字节运算循环码crc16-ccitt校验的方法 | |
CN110768871B (zh) | 一种自动统计dcs系统数据传输正确性的测试方法及系统 | |
CN103518205B (zh) | 限制操作权限的方法及自动化设备 | |
US20240364455A1 (en) | Sending method, receiving method, apparatus, system, device, and storage medium | |
CN108233944A (zh) | 一种循环冗余校验方法、设备及存储介质 | |
CN107579792B (zh) | 多型号在轨卫星工程参数并行解析方法 | |
CN113485881A (zh) | 一种临时限速服务器的测试方法、装置、电子设备及介质 | |
KR102535563B1 (ko) | Can 버스를 이용한 다중 uart 통신 방법, 이를 수행하기 위한 기록 매체 및 장치 | |
CN107231213A (zh) | Crc‑32算法在usb3.0数据包中的实现方法 | |
CN113259273A (zh) | 交换机的控制方法、交换机、计算机设备和存储介质 | |
CN113595817A (zh) | 一种lin通信故障注入方法、系统及存储介质 | |
CN101771554A (zh) | 一种余度管理电路及其管理方法 | |
CN115085867B (zh) | 一种can总线报文的e2e校验方法及装置 | |
CN111935767A (zh) | 一种网络仿真系统 | |
CN111464386A (zh) | 用于数据传输的通信转换方法和装置、通信系统 | |
CN111010258A (zh) | 一种基于编码的计算机联锁系统通信方法 | |
CN116455697A (zh) | 一种批量数据回灌校验方法、系统和终端设备 | |
CN114679239A (zh) | 一种高速网络中crc分段计算方法及装置 | |
CN115882876A (zh) | 一种数据编码校验方法、系统、设备、介质及电路 | |
CN115510788A (zh) | 一种编码的方法、系统、设备和存储介质 | |
CN114205261B (zh) | 网络通信数据正确性的自动化测试方法及存储介质 | |
CN113438226A (zh) | 基于混合传输协议的报文生成、解析方法、设备及系统 | |
CN108183835B (zh) | 一种分布式系统军用1394总线数据完整性监控方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 401133 room 208, 2 house, 39 Yonghe Road, Yu Zui Town, Jiangbei District, Chongqing Patentee after: Deep Blue Automotive Technology Co.,Ltd. Address before: 401133 room 208, 2 house, 39 Yonghe Road, Yu Zui Town, Jiangbei District, Chongqing Patentee before: CHONGQING CHANGAN NEW ENERGY AUTOMOBILE TECHNOLOGY Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |