{"id":13087,"date":"2026-06-30T19:20:18","date_gmt":"2026-06-30T19:20:18","guid":{"rendered":"https:\/\/introspect.ca\/blog\/what-we-discovered-when-decoding-a-smartphone-lpddr5x-memory-using-the-m7030\/"},"modified":"2026-07-04T14:17:42","modified_gmt":"2026-07-04T14:17:42","slug":"what-we-discovered-when-decoding-a-smartphone-lpddr5x-memory-using-the-m7030","status":"publish","type":"blogposts","link":"https:\/\/introspect.ca\/fr\/blog\/what-we-discovered-when-decoding-a-smartphone-lpddr5x-memory-using-the-m7030\/","title":{"rendered":"Ce que nous avons d\u00e9couvert en d\u00e9codant la m\u00e9moire LPDDR5X d&rsquo;un smartphone \u00e0 l&rsquo;aide de l&rsquo;analyseur de protocole M7030 DDR\/LPDDR"},"content":{"rendered":"<p>Au sein des laboratoires de R&#038;D d\u2019Introspect, nous aimons toujours analyser des syst\u00e8mes en fonctionnement et comprendre leur fonctionnement. Dans cet article, nous nous sommes demand\u00e9 s\u2019il \u00e9tait possible de d\u00e9coder un smartphone de nouvelle g\u00e9n\u00e9ration \u00e9quip\u00e9 d\u2019une m\u00e9moire LPDDR5x de type \u00ab package-on-package \u00bb. Pour ce faire, nous avons utilis\u00e9 un <a href=\"https:\/\/introspect.ca\/fr\/product\/memory-interposers\/\" target=\"_blank\" rel=\"noopener\">interposeur \u00e0 pointe int\u00e9gr\u00e9e<\/a>, une sonde active <a href=\"https:\/\/introspect.ca\/fr\/product\/rsh2-remote-sampling-head\/\" target=\"_blank\" rel=\"noopener\">RSH2<\/a> et <a href=\"https:\/\/introspect.ca\/fr\/product\/m7030-ddr-lpddr-protocol-analyzer\/\" target=\"_blank\" rel=\"noopener\">l\u2019analyseur de protocole M7030<\/a>. Poursuivez votre lecture pour d\u00e9couvrir ce que nous avons appris !   <\/p>\n<h2><\/h2>\n<p>&nbsp;<\/p>\n<h2>Le dispositif de test<\/h2>\n<p>La figure 1 pr\u00e9sente le montage que nous avons utilis\u00e9. Comme il s&rsquo;agit d&rsquo;un smartphone, vous pouvez constater \u00e0 quel point la carte m\u00e8re de l&rsquo;appareil est minuscule. Sur la figure, l&rsquo;interposeur \u00e0 embouts int\u00e9gr\u00e9s est plac\u00e9 entre le processeur d&rsquo;applications et le module de m\u00e9moire LPDDR5x. L&rsquo;interposeur nous a permis de sonder \u00e0 la fois le bus CA et le bus DQ. L&rsquo;interposeur transmet les signaux mesur\u00e9s via une interface \u00e0 c\u00e2ble micro-coaxial blind\u00e9, ce qui \u00e9vite d&rsquo;avoir \u00e0 souder des pointes de sonde actives externes.    <\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-13062 aligncenter\" src=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-1024x768.png\" alt=\"\" width=\"640\" height=\"480\" srcset=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-1024x768.png 1024w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-300x225.png 300w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-768x576.png 768w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-1536x1152.png 1536w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-2048x1535.png 2048w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-600x450.png 600w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-80x60.png 80w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure1-120x90.png 120w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/p>\n<p style=\"text-align: center;\"><strong>Figure 1 :<\/strong> Interposeur \u00e0 embout int\u00e9gr\u00e9 install\u00e9 sur un smartphone \u00e9quip\u00e9 d&rsquo;un dispositif de m\u00e9moire LPDDR5x de type \u00ab Package-on-Package \u00bb (POP).<\/p>\n<p>&nbsp;<\/p>\n<p>La figure 2 pr\u00e9sente l&rsquo;analyseur de protocole M7030 DDR\/LPDDR. Cet instrument a \u00e9t\u00e9 utilis\u00e9 pour d\u00e9coder le bus CA du t\u00e9l\u00e9phone et d\u00e9terminer comment le syst\u00e8me d&rsquo;exploitation programme la m\u00e9moire. <\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-13064 aligncenter\" src=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure2.png\" alt=\"\" width=\"601\" height=\"299\" srcset=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure2.png 727w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure2-300x149.png 300w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure2-600x299.png 600w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure2-120x60.png 120w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure2-181x90.png 181w\" sizes=\"auto, (max-width: 601px) 100vw, 601px\" \/><\/p>\n<p style=\"text-align: center;\"><strong>Figure 2 :<\/strong> Analyseur de protocole M7030 DDR\/LPDDR.<\/p>\n<p>&nbsp;<\/p>\n<h2>D\u00e9codage du bus CA<\/h2>\n<h3>S\u00e9quence de commandes lorsque le t\u00e9l\u00e9phone est d\u00e9branch\u00e9 du chargeur<\/h3>\n<p>Nous avons tout d\u2019abord mesur\u00e9 le t\u00e9l\u00e9phone alors qu\u2019il fonctionnait sur sa propre batterie et qu\u2019il \u00e9tait d\u00e9branch\u00e9 du chargeur. La figure 3 pr\u00e9sente une s\u00e9quence de commandes typique que nous avons observ\u00e9e. Comme vous pouvez le constater, il existe toute une s\u00e9rie de commandes telles que ACT1\/ACT2, CAS, REF, et bien s\u00fbr des commandes de lecture et d\u2019\u00e9criture. Notez toutefois les deux commandes mises en \u00e9vidence, \u00e0 savoir PDE et PDX. Il s\u2019agit respectivement des commandes d\u2019entr\u00e9e et de sortie du mode de mise en veille, qui contr\u00f4lent le moment o\u00f9 le signal d\u2019horloge vers la m\u00e9moire est compl\u00e8tement interrompu.    <\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-13067 aligncenter\" src=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-1024x573.png\" alt=\"\" width=\"640\" height=\"358\" srcset=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-1024x573.png 1024w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-300x168.png 300w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-768x430.png 768w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-1536x859.png 1536w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-2048x1146.png 2048w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-600x336.png 600w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-107x60.png 107w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure3-161x90.png 161w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/p>\n<p style=\"text-align: center;\"><strong>Figure 3 :<\/strong> Trace de l&rsquo;analyseur de protocole M7030 montrant la pr\u00e9sence des commandes PDE et PDX.<\/p>\n<p>&nbsp;<\/p>\n<p>Ainsi, le t\u00e9l\u00e9phone g\u00e8re manifestement l&rsquo;autonomie de la batterie en bloquant compl\u00e8tement les acc\u00e8s au p\u00e9riph\u00e9rique de m\u00e9moire. De plus, si vous observez le menu d\u00e9roulant situ\u00e9 \u00e0 gauche de la figure 3, vous verrez une liste (ou un filtre) de toutes les commandes re\u00e7ues au cours de la trace actuelle. Nous avons remarqu\u00e9 que plus le niveau de charge de la batterie \u00e9tait bas, plus le processeur d&rsquo;applications envoyait de commandes PDE et PDX. Cela est logique, car le t\u00e9l\u00e9phone tente d&rsquo;\u00e9conomiser son \u00e9nergie !   <\/p>\n<p>&nbsp;<\/p>\n<h3>S\u00e9quence de commandes lors du branchement au chargeur<\/h3>\n<p>Nous avons ensuite branch\u00e9 le t\u00e9l\u00e9phone au chargeur. Nous \u00e9tions curieux de savoir si la fr\u00e9quence des commandes PDE et PDX allait changer ou non. \u00c0 notre grande surprise, nous avons constat\u00e9 que le t\u00e9l\u00e9phone n\u2019envoyait absolument aucune commande PDE ni PDX ! La figure 4 pr\u00e9sente un trac\u00e9 sur lequel nous avons mis en \u00e9vidence la liste des commandes observ\u00e9es. Comme vous pouvez le constater, il n\u2019y a aucune entr\u00e9e pour les commandes PDE et PDX. Vous pouvez donc vous attendre \u00e0 ce que votre t\u00e9l\u00e9phone fonctionne plus rapidement lorsqu\u2019il est branch\u00e9 sur le chargeur !     <\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-13069\" src=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-1024x573.png\" alt=\"\" width=\"640\" height=\"358\" srcset=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-1024x573.png 1024w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-300x168.png 300w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-768x429.png 768w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-1536x859.png 1536w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-2048x1145.png 2048w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-600x335.png 600w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-107x60.png 107w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure4-161x90.png 161w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/p>\n<p style=\"text-align: center;\"><strong>Figure 4 :<\/strong> Trace de l&rsquo;analyseur de protocole M7030 ne comportant aucune commande PDE ni PDX.<\/p>\n<p>&nbsp;<\/p>\n<h3>Beaucoup de changements de fr\u00e9quence !<\/h3>\n<p>Enfin, que le chargeur soit branch\u00e9 ou non, nous avons remarqu\u00e9 que le t\u00e9l\u00e9phone effectuait de nombreux changements de fr\u00e9quence d&rsquo;horloge au niveau de la m\u00e9moire. En vous r\u00e9f\u00e9rant \u00e0 la figure 5, vous verrez la s\u00e9quence de commandes classique li\u00e9e au changement de la fr\u00e9quence de consigne (FSP). Vous verrez les commandes MRW juste avant le changement de fr\u00e9quence, puis les commandes MRW juste apr\u00e8s le changement de fr\u00e9quence, et enfin une commande MPC. La figure 6 pr\u00e9sente le diagramme temporel illustrant le changement instantan\u00e9 de fr\u00e9quence tel qu\u2019il a \u00e9t\u00e9 captur\u00e9 par l\u2019analyseur de protocole M7030.   <\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-13071 aligncenter\" src=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-1024x573.png\" alt=\"\" width=\"640\" height=\"358\" srcset=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-1024x573.png 1024w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-300x168.png 300w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-768x430.png 768w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-1536x859.png 1536w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-2048x1146.png 2048w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-600x336.png 600w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-107x60.png 107w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure5-161x90.png 161w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/p>\n<p style=\"text-align: center;\"><strong>Figure 5 :<\/strong> S\u00e9quence de commandes de modification de la fr\u00e9quence.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-13073 aligncenter\" src=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-1024x558.png\" alt=\"\" width=\"640\" height=\"349\" srcset=\"https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-1024x558.png 1024w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-300x164.png 300w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-768x419.png 768w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-1536x837.png 1536w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-2048x1116.png 2048w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-600x327.png 600w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-110x60.png 110w, https:\/\/introspect.ca\/wp-content\/uploads\/2026\/06\/WhatWeDiscoveredPhonePde_Figure6-165x90.png 165w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/p>\n<p style=\"text-align: center;\"><strong>Figure 6 :<\/strong> Diagramme temporel de la variation de fr\u00e9quence.<\/p>\n<p>&nbsp;<\/p>\n<p>Les changements de fr\u00e9quence constituent une caract\u00e9ristique particuli\u00e8rement importante de la conception moderne des interfaces m\u00e9moire. Tout analyseur de protocole ou analyseur logique doit \u00eatre capable de r\u00e9agir \u00e0 ces variations de fr\u00e9quence et de faciliter leur d\u00e9bogage. L\u2019analyseur de protocole DDR\/LPDDR M7030 d\u2019Introspect Technology a \u00e9t\u00e9 sp\u00e9cialement con\u00e7u pour g\u00e9rer les variations de fr\u00e9quence instantan\u00e9es, comme l\u2019illustrent les figures 5 et 6 ci-dessus.  <\/p>\n<p>&nbsp;<\/p>\n<h2>R\u00e9sum\u00e9<\/h2>\n<p>Dans cet article, nous avons d\u00e9cid\u00e9 d\u2019analyser en d\u00e9tail un smartphone moderne \u00e0 l\u2019aide de l\u2019interposeur \u00e0 embout int\u00e9gr\u00e9 d\u2019Introspect, d\u2019une sonde active RSH2 et de l\u2019analyseur de protocole M7030. Ce que nous avons d\u00e9couvert \u00e9tait fascinant. Le syst\u00e8me d\u2019exploitation du t\u00e9l\u00e9phone modifie en effet consid\u00e9rablement la mani\u00e8re dont il g\u00e8re la m\u00e9moire en fonction de ses diff\u00e9rentes conditions de fonctionnement et du niveau de charge de sa batterie. Par exemple, lorsqu\u2019il est branch\u00e9, le t\u00e9l\u00e9phone fonctionne \u00e0 pleine puissance sans ex\u00e9cuter les commandes d\u2019entr\u00e9e et de sortie du mode veille.   <\/p>\n<p>Avez-vous besoin de d\u00e9coder un module en temps r\u00e9el \u00e9quip\u00e9 d&rsquo;une m\u00e9moire DDR ou LPDDR ? N&rsquo;h\u00e9sitez pas \u00e0 nous contacter \u00e0 <a href=\"mailto:info@introspect.ca\">l&rsquo;adresse info@introspect.ca<\/a> pour obtenir plus d&rsquo;informations et d\u00e9couvrir \u00e0 quel point le M7030 est simple d&rsquo;utilisation. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Au sein des laboratoires de R&#038;D d\u2019Introspect, nous aimons toujours analyser des syst\u00e8mes en fonctionnement et comprendre leur fonctionnement. Dans cet article, nous nous<\/p>\n","protected":false},"author":9,"featured_media":13060,"menu_order":0,"template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"class_list":["post-13087","blogposts","type-blogposts","status-publish","has-post-thumbnail","hentry","blog_topics-perspectives-techniques","blog_tags-lpddr5x","blog_tags-m7030","blog_tags-validation-de-memoire"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/blogposts\/13087","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/blogposts"}],"about":[{"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/types\/blogposts"}],"author":[{"embeddable":true,"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/users\/9"}],"version-history":[{"count":2,"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/blogposts\/13087\/revisions"}],"predecessor-version":[{"id":13189,"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/blogposts\/13087\/revisions\/13189"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/media\/13060"}],"wp:attachment":[{"href":"https:\/\/introspect.ca\/fr\/wp-json\/wp\/v2\/media?parent=13087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}