Storage devices and components, including memory components (e.g., non-volatile memory) can be trained by executable code that facilitates and/or performs reads and/or write requests to one or more storage sub-modules of a storage component (e.g., memory configured on a memory channel) made up of multiple storage components (e.g., DIMMs). The executable code can also train multiple storage components at the same time and/or in parallel.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method for training storage components that each includes storage modules arranged in one or more channels, wherein each of the storage modules includes multiple storage sub-modules that are individually addressable, wherein the method is performed at least partly by a device, and wherein the method comprises: providing an interfacing component at least partly as computer executable code configured to train one or more storage modules of a first storage component of the storage modules at least partly by: facilitating and/or performing reads and/or write requests to one or more storage sub-modules of the first storage component. 2. The method of claim 1, wherein the interfacing component is further configured to facilitate training of one or more storage modules of a second storage component of the storage components at least partly by: facilitating reads and/or write requests to one or more of the storage sub-modules of the one or more storage modules of the second storage component. 3. The method of claim 1, wherein the computer executable code is further configured to train storage modules of a first storage component at least partly by generating random data patterns. 4. The method of claim 1, wherein the interfacing component includes a logical interface and a physical interface. 5. The method of claim 4, wherein the logical interface is configured to perform one or more of the following: schedule reads, schedule writes, and management accesses to the one or more of the storage sub-modules of the one or more storage modules of the first storage component. 6. The method of claim 4, wherein the physical interface is configured to allow tuning of the one or more of the storage sub-modules of the one or more storage modules of the first storage component in the time and/or frequency domains. 7. The method of claim 4, wherein the logical interface is configured to interface with an external component. 8. The method of claim 7, wherein the external component is a remote agent configured to perform one or more of the following: tuning, affecting calibration and recording of optimal settings associated with the training of the one or more of the storage sub-modules of the one or more storage modules of the first storage component. 9. The method of claim 1, wherein the computer executable code is further configured to allow stable interactions and can provide synchronization and control to an external agent that can be operable on a different temporal scale. 10. The method of claim 1, wherein interfacing component is further configured to perform one or more of the following: perform calibration by sampling, capture acceptable calibration control sets based on the sampling and use one or more acceptable calibration control sets as heuristics. 11. The method of claim 1, wherein the interfacing component is further configured to perform one or more post-calibration activities. 12. The method of claim 1, wherein the first storage component includes DDR-based memory. 13. The method of claim 12, wherein the first storage component includes one four (4) DIMMs of DDR3 configured on a single channel. 14. The method of claim 12, wherein the first storage component includes one four (4) DIMMs of DDR4 configured on a single channel. 15. A device that includes one or more processors configured to train storage components that each includes storage modules arranged in one or more channels, wherein each of the storage modules includes multiple storage sub-modules that are individually addressable, wherein the one or more processors are further configured to: providing an interfacing component at least partly as computer executable code configured to train one or more storage modules of a first storage component of the storage modules at least partly by: facilitating and/or performing reads and/or write requests to one or more storage sub-modules of the first storage component.