[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"doc-seo-656876-105":3,"detail-sidebar-cat-0-en-105":80,"doc-detail-656876-en":130},{"code":4,"msg":5,"data":6},0,"ok",{"site_id":7,"language":8,"slug":9,"title":10,"keywords":11,"description":12,"schema_data":13,"social_meta":73,"head_meta":75,"extra_data":77,"updated_unix":79},105,"en","eye-diagrams-for-can-how-to-generate-and-evaluate-eye-diagrams","Eye Diagrams for CAN - How to Generate and Evaluate Eye Diagrams","","Eye diagrams provide a fast way to evaluate signal integrity in serial data systems, including CAN networks. The article explains how to generate eye diagrams by slicing waveform data, using a virtual clock extracted from the CAN waveform itself, and overlaying bits from a single frame. It further details why classic stacked persistence views are insufficient for CAN, and how to produce separate eye diagrams for arbitration and data phases for CAN FD and CAN XL. It also addresses CAN synchronization timing and how virtual-clock segments relate to accurate bit slicing and mask testing.",{"@graph":14,"@context":72},[15,34,55],{"@type":16,"itemListElement":17},"BreadcrumbList",[18,23,27,31],{"item":19,"name":20,"@type":21,"position":22},"https://docshare.wps.com","Home","ListItem",1,{"item":24,"name":25,"@type":21,"position":26},"https://docshare.wps.com/document/","Document",2,{"item":28,"name":29,"@type":21,"position":30},"https://docshare.wps.com/document/technology/","Technology",3,{"item":32,"name":10,"@type":21,"position":33},"https://docshare.wps.com/document/eye-diagrams-for-can-how-to-generate-and-evaluate-eye-diagrams/656876/",4,{"url":32,"name":10,"@type":35,"image":36,"author":41,"headline":10,"publisher":44,"fileFormat":47,"inLanguage":8,"description":12,"dateModified":48,"datePublished":49,"encodingFormat":47,"isAccessibleForFree":50,"interactionStatistic":51},"DigitalDocument",{"url":37,"@type":38,"width":39,"height":40},"https://docshare.wps.com/thumbnails/eye-diagrams-for-can-how-to-generate-and-evaluate-eye-diagrams/656876.png","ImageObject",300,407,{"name":42,"@type":43},"supergirl","Person",{"url":19,"name":45,"@type":46},"DocShare","Organization","application/pdf","2026-10-30","2026-10-25",true,{"@type":52,"interactionType":53,"userInteractionCount":26},"InteractionCounter",{"@type":54},"ViewAction",{"@type":56,"mainEntity":57},"FAQPage",[58,64,68],{"name":59,"@type":60,"acceptedAnswer":61},"Why are classic persistence-based eye diagrams less useful for CAN networks?","Question",{"text":62,"@type":63},"Because they can mix bits from different data frames and different nodes, there is no reliable way to determine whether the bits come from a single frame or the same transmitter.","Answer",{"name":65,"@type":60,"acceptedAnswer":66},"How does the article generate a useful sliced eye diagram for CAN?",{"text":67,"@type":63},"It acquires a record containing a complete data frame, overlays bits from that frame using oscilloscope slicing, and uses a virtual clock to cut slices to the correct length and align them.",{"name":69,"@type":60,"acceptedAnswer":70},"What changes are needed for CAN FD and CAN XL eye diagram generation?",{"text":71,"@type":63},"Since bit rates change across the frame, the method is refined by splitting the frame into arbitration and data phases and generating separate eye diagrams for each, using different virtual clocks. For CAN XL, transition-related ADS/DAS bits must be ignored to avoid false fail indicators.","https://schema.org",{"og:url":32,"og:type":74,"og:title":10,"og:site_name":45,"og:description":12},"article",{"robots":76,"canonical":32},"index,follow",{"doc_id":78,"site_id":7},656876,1792971296,{"code":4,"msg":81,"data":82},"success",[83,87,91,95,100,104,109,114,119,122,126],{"id":22,"doc_module":4,"doc_module_name":25,"category_name":84,"show_sort_weight":85,"slug":86},"Story & Novel",90,"story-novel",{"id":26,"doc_module":4,"doc_module_name":25,"category_name":88,"show_sort_weight":89,"slug":90},"Literature",80,"literature",{"id":33,"doc_module":4,"doc_module_name":25,"category_name":92,"show_sort_weight":93,"slug":94},"Exam",70,"exam",{"id":96,"doc_module":4,"doc_module_name":25,"category_name":97,"show_sort_weight":98,"slug":99},5,"Comic",60,"comic",{"id":101,"doc_module":4,"doc_module_name":25,"category_name":29,"show_sort_weight":102,"slug":103},6,50,"technology",{"id":105,"doc_module":4,"doc_module_name":25,"category_name":106,"show_sort_weight":107,"slug":108},7,"Healthcare",40,"healthcare",{"id":110,"doc_module":4,"doc_module_name":25,"category_name":111,"show_sort_weight":112,"slug":113},8,"Research & Report",30,"research-report",{"id":115,"doc_module":4,"doc_module_name":25,"category_name":116,"show_sort_weight":117,"slug":118},9,"Religion & Spirituality",20,"religion-spirituality",{"id":117,"doc_module":4,"doc_module_name":25,"category_name":120,"show_sort_weight":117,"slug":121},"World Cup","world-cup",{"id":123,"doc_module":4,"doc_module_name":25,"category_name":124,"show_sort_weight":123,"slug":125},10,"Lifestyle","lifestyle",{"id":127,"doc_module":4,"doc_module_name":25,"category_name":128,"show_sort_weight":96,"slug":129},19,"General","general",{"code":4,"msg":81,"data":131},{"doc_id":78,"user_id":132,"nickname":42,"user_avatar":133,"doc_module":4,"category_id":101,"category_name":29,"doc_title":10,"doc_description":12,"doc_content":134,"file_id":135,"file_url":136,"file_type":137,"file_size":138,"view_count":26,"is_deleted":4,"is_public":22,"is_downloadable":22,"audit_status":22,"page_count":33,"language":139,"language_code":8,"site_id":7,"html_lang":8,"table_of_contents":140,"faqs":141,"seo_title":142,"seo_description":12,"update_tm":79,"read_time":123},962088121634,"https://ap-avatar.wpscdn.com/davatar_9964176cb1d06d4a9deccf72a44ae3dc","Eye diagrams for CAN  \nEye diagrams enable quick evaluating of the signal integrity of serial data systems.  \nThis article explains how to generate eye diagrams for CAN, including separate arbitration  \nand data phase diagrams for CAN FDand CAN XL. It also describes how to use information gained from eye diagrams to evaluate CAN networks.  \n(Source: Adobe Stock)  \nThe eye diagram  \nsignal quality of  \nis a simple method for evaluating the serial data. It is a standard analysis  \ntool for high-speed data signals such as PCI Express, SAS (serial attached SCSI: small computer system interface), SATA (serial ATA: AT attachment), etc. It is much less commonly used for serial networks such as CAN, but it provides a simple way to characterize the signal quality.  \nUnlike high-speed network systems, on the CAN network data is transmitted in short bursts with blocks of bits. Acquiring multiple waveforms and “stacking” them on a persistence display is how the traditional eye diagram is formed, showing the history of all the acquisitions. Although this method is possible, it is not useful for CAN, because, in this mode, there is no way to distinguish whether the data comes from a single frame or even from the same device on the network.  \nFigure 1: For the classic eye diagram, the oscilloscope is triggered on any edge while running in persistence mode. For CAN, this kind of eye diagram will contain bits from different data frames and different nodes. (Source: Teledyne Lecroy)  \nA better way to form the eye diagram is to acquire a record containing a complete data frame and to overlay all bits from this one data frame to form the eye diagram. This can be done with the use of a special \"slicer\" software function in the oscilloscope, which breaks down the waveforms into slices. These “slices” are overlaid on top of  \neach other to generate the eye diagram of the data frame. To cut the slices into the correct length and adjust them on top of each other, a “virtual” clock must be used. In the case of CAN, this clock needs to be extracted from the waveform itself because it is not available as a separate signal.  \nFigure 2: For a “sliced” eye diagram, all bits from a data frame are overlaid using a virtual clock. In the top graph, the red bars show the separation of the bits extracted by the virtual clock. (Source: Teledyne Lecroy)  \nThis method works quite well for CAN CC (classic) with a constant bit rate in a frame, but what happens if this method is used for CAN FD (flexible data rate) or CAN XL (extended data-field length) where the bit rate changes?  \nTo get a usable eye diagram for CAN FD and CAN XL, where different parts in the frame use different clock speeds, it is needed to refine the generation of the eye diagram by splitting the CAN frame into the two parts, the arbitration phase and the data phase. The easiest way, and this is also the way most oscilloscope vendors have implemented the eye diagram for CAN, is to create the eye diagram only from the data phase of the CAN frame.  \nA much better way is to generate separate eye diagrams for both the arbitration phase and data phase   \n38 CAN Newsletter 4/2024  \nof each frame. To be able to separate the phases andoverlay the correct bits for the different eye diagrams, the oscilloscope must decode and interpret the CAN frame first. For example, in the Figure 3, only the bits highlighted in blue are relevant to the arbitration-phase eye diagram. To get a correct eye diagram containing all parts of the arbitration phase, bits that occur both before and after the data phase have to be overlayed. Similarly, the second eye diagram for the data phase uses only the part of the frame that is highlighted in green in Figure 3.  \nFigure 3: To get a useful eye diagram for a CAN FD or CAN XL network, two kinds of eye diagrams have to be generated, one for the arbitration phase (blue) and a second one for the data phase (green) (Source: Teledyne Lecroy)  \nBoth eye diagrams also need a different vir","cbCaieWc0p04cxY2","https://ap.wps.com/l/cbCaieWc0p04cxY2","pdf",2298719,"English","# Eye diagrams for CAN\n## Classic persistence eye diagrams vs CAN limitations\n## Virtual-clock sliced eye diagrams\n## Separate arbitration and data phase eye diagrams for CAN FD/CAN XL\n## Calculating the virtual clock from CAN synchronization timing","[{\"question\":\"Why are classic persistence-based eye diagrams less useful for CAN networks?\",\"answer\":\"Because they can mix bits from different data frames and different nodes, there is no reliable way to determine whether the bits come from a single frame or the same transmitter.\"},{\"question\":\"How does the article generate a useful sliced eye diagram for CAN?\",\"answer\":\"It acquires a record containing a complete data frame, overlays bits from that frame using oscilloscope slicing, and uses a virtual clock to cut slices to the correct length and align them.\"},{\"question\":\"What changes are needed for CAN FD and CAN XL eye diagram generation?\",\"answer\":\"Since bit rates change across the frame, the method is refined by splitting the frame into arbitration and data phases and generating separate eye diagrams for each, using different virtual clocks. For CAN XL, transition-related ADS/DAS bits must be ignored to avoid false fail indicators.\"}]","Eye Diagrams for CAN - How to Generate and Evaluate Eye Diagrams | PDF"]