Blood flow imaging
By dynamically allocating computing resources and optimizing memory resources on mobile computing devices, the problem of resource scarcity in blood imaging technology on mobile devices has been solved, enabling efficient blood imaging and long-term recording.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-03
- Publication Date
- 2026-03-27
AI Technical Summary
Existing blood imaging technologies typically require large, expensive, and time-consuming specialized equipment. Furthermore, when performing demanding workloads on mobile computing devices, computational resources are strained and batteries are consumed rapidly, making it difficult to perform blood imaging efficiently on mobile computing devices.
By dynamically allocating computing resources, optimizing memory resource usage, utilizing different types of memory devices to store and process blood imaging data, including combinations of volatile and non-volatile memory, monitoring and determining workload characteristics, and optimizing battery consumption and computing resource usage.
Efficient blood imaging is achieved on mobile computing devices, reducing reliance on large, dedicated devices, optimizing computing resources and battery consumption, and supporting real-time detection and long-term recording of mobile blood imaging.
Smart Images

Figure CN115713454B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates generally to semiconductor memory and methods, and more specifically to devices, systems, and methods for blood flow imaging. BACKGROUND
[0002] Memory devices are typically provided as internal circuitry of a computer or other electronic system, semiconductor circuit, integrated circuit. There are many different types of memory, including volatile and non-volatile memory. Volatile memory can require power to maintain its data (e.g., host data, error data, etc.), and includes random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), synchronous dynamic random access memory (SDRAM), and thyristor random access memory (TRAM), among others. Non-volatile memory can provide persistent data by retaining stored data when not powered, and can include NAND flash memory, NOR flash memory, and resistive variable memory such as phase change random access memory (PCRAM), resistive random access memory (RRAM), and magnetoresistive random access memory (MRAM) such as spin-torque transfer random access memory (STT RAM), among others.
[0003] Memory devices can be coupled to a host (e.g., a host computing device) to store data, commands, and / or instructions for use by the host in operation of the computer or electronic system. For example, data, commands, and / or instructions can be communicated between the host and the memory device during operation of the computing or other electronic system. SUMMARY
[0004] In one aspect, the application provides a method for blood flow imaging, comprising: receiving, by a processor coupled to a first memory device comprising a first type of media and a second memory device comprising a second type of media, an indication corresponding to a launch of an application; responsive to receiving the indication corresponding to the launch of the application, reallocating computing resources between the first memory device and the second memory device; receiving, by the processor, data captured by an imaging device coupled to the processor; determining, by the processor, for the first memory device and the second memory device, characteristics of a workload corresponding to execution of the application to process the data captured by the imaging device; writing, based on the characteristics determined for the first memory device and the second memory device in performing the workload, the data captured by the imaging device to the first memory device or the second memory device; and executing, by the processor, the workload as part of the execution of the application when the data captured by the imaging device is written to the first memory device or the second memory device that exhibits a greater than a threshold set of the determined characteristics in performing the workload.
[0005] In another aspect, the disclosure provides a device for blood flow imaging, comprising: a first memory device comprising a first type of media; a second memory device comprising a second type of media; an imaging device; and a processor coupled to the first memory device, the second memory device, and the imaging device, wherein the processor is to: receive an application launch indicator; in response to receiving the application launch indicator, reallocate computing resources between the first memory device and the second memory device based at least in part on determined characteristics of the first memory device and the second memory device; receive data captured by the imaging device; write the data captured by the imaging device to the first memory device or the second memory device based on the determined characteristics for the first memory device and the second memory device; execute an application while the data captured by the imaging device is written to the first memory device or the second memory device.
[0006] In another aspect, the disclosure provides a system for blood flow imaging, comprising: a memory system comprising a processor, a first memory device comprising a first type of media, a second memory device comprising a second type of media, and a third memory device comprising a third type of media; and an imaging device coupled to the memory devices, wherein the processor is to: receive one or more images captured by the imaging device; generate, based on characteristics of the one or more received images, an application launch indicator corresponding to execution of an application corresponding to detecting an abnormality in at least a portion of a living being; in response to generating the application launch indicator, reallocate computing resources between the first memory device, the second memory device, or the third memory device, or any combination thereof, based at least in part on characteristics of the first memory device, the second memory device, and the third memory device; in response to generating the application launch indicator, write at least a portion of the one or more images captured by the imaging device to the first memory device, the second memory device, or the third memory device, or a combination thereof; and execute, while the one or more images captured by the imaging device are written to the first memory device, the second memory device, or the third memory device, or any combination thereof, the application corresponding to detecting the abnormality in the at least a portion of the living being. BRIEF DESCRIPTION OF DRAWINGS
[0007] Figure 1 is a functional block diagram in the form of a device including a host and a memory device according to a number of embodiments of the disclosure.
[0008] Figure 2 is another functional block diagram in the form of a computing system including a device including a host and a memory system according to a number of embodiments of the disclosure.
[0009] Figure 3A functional block diagram in the form of a device including a memory system according to a number of embodiments of the present disclosure.
[0010] Figure 4 Another functional block diagram in the form of a device including a memory system according to a number of embodiments of the present disclosure.
[0011] Figure 5 A diagram showing a human medical self-diagnostic test subject and a mobile computing device according to a number of embodiments of the present disclosure.
[0012] Figure 6 A flowchart representing an example method corresponding to blood flow imaging according to a number of embodiments of the present disclosure. DETAILED DESCRIPTION
[0013] Methods, systems, and devices related to blood flow imaging are described. For example, a method for blood flow imaging can include receiving, by a processor coupled to a first memory device comprising a first type of media and a second memory device comprising a second type of media, an indication corresponding to a launch of an application and data captured by an imaging device coupled to the processor. The method can include determining, for the first memory device and the second memory device, characteristics of a workload corresponding to execution of the application to process the data captured by the imaging device and writing the data captured by the imaging device to the first memory device or the second memory device based on the characteristics determined for the first memory device and the second memory device in performing the workload. The method can further include performing the workload as part of the execution of the application when the data captured by the imaging device is written to the first memory device or the second memory device that exhibits a set of threshold values greater than the determined characteristics in performing the workload.
[0014] Blood imaging techniques can be performed to detect abnormalities in the blood of a living being (e.g., a human or other animal having blood vessels through which blood flows). Generally, these techniques can involve the use of magnetic resonance imaging (MRI) techniques, such as magnetic resonance angiography (MRA) and / or computed tomography (CT) techniques such as computed tomography angiography (CTA), among other suitable techniques. While these techniques are generally reliable in detecting abnormalities in blood, these procedures are expensive and time consuming to perform. Moreover, such procedures require embedding the living being in a large, specialized device, typically in a hospital or doctor's office skilled in operating such devices, and thus require the living being to be in a hospital or doctor's office skilled in operating the aforementioned devices.
[0015] However, as imaging device and computing (e.g., processing and memory device) technology has developed, it has become possible to perform blood imaging techniques in the absence of the aforementioned large, specialized devices required for traditional performance of blood imaging techniques (e.g., MRA and / or CTA). For example, as described in greater detail herein, embodiments of the present disclosure can allow for blood imaging to be performed to detect abnormalities in biological blood using a mobile computing device. Such abnormalities can include blood cells exhibiting characteristics indicative of blood cancers (e.g., leukemia, lymphoma myeloma, etc.), fluctuating blood glucose levels, fluctuating blood pressure levels, percentages of white blood cells to red blood cells, hemophilia, and / or anemia, among other abnormalities. As used herein, the term “mobile computing device” generally refers to a handheld computing device having a tablet or phablet form factor (e.g., a smartphone). Generally, a tablet form factor can include a display screen between about 3 inches and 5.2 inches (diagonal measurement), while a phablet form factor can include a display screen between about 5.2 inches and 7 inches (diagonal measurement). However, examples of “mobile computing devices” are not so limited, and in some embodiments, a “mobile computing device” can refer to an IoT device, among other types of edge computing devices.
[0016] To perform blood imaging techniques in the absence of the aforementioned large, specialized devices, aspects of the present disclosure provide for dynamic allocation of computing resources (e.g., processing and / or memory resources) to free up computing resources exhibiting certain characteristics to allow for images to be captured and processed to perform blood imaging techniques. As described in greater detail herein, computing resources can be reallocated (or pre-allocated) in response to a determination (e.g., based on receiving an application launch indicator) that an application involving image capture and processing to perform a blood imaging technique is to be performed. This reallocation (or pre-allocation) of computing resources can seek to optimize available computing resources to capture, store, and / or process images to perform blood imaging techniques to make processing of such images possible.
[0017] For example, as such images need to have a high level of quality in order to be processed in connection with blood imaging techniques, the images can have exceptionally large file sizes and can therefore be best processed using computing resources that exhibit, among other things, high bandwidth characteristics, low access latency characteristics, high memory cell density characteristics, and / or low error characteristics. By reallocating (or pre-allocating) computing resources based on such characteristics in response to a determination that an application involving image capture and processing to perform a blood imaging technique is to be performed, aspects of the present disclosure can facilitate performing blood imaging techniques in the absence of the large, specialized devices commonly used to perform blood imaging.
[0018] Further, aspects of the present disclosure allow for storing (e.g., over time to produce a long-term record of abnormalities or deficiencies thereof detected during performance of a blood imaging operation), transmitting (e.g., to a hospital, a physician, an emergency responder, etc.), and / or analyzing information gathered for performance of the blood imaging operations described herein to produce health recommendations (e.g., dietary recommendations, exercise and / or activity recommendations, vitamin / nutritional supplement recommendations, etc.).
[0019] As mentioned above, embodiments of the present disclosure allow for executing an application to perform a blood imaging technique. As used herein, the term “application” generally refers to one or more computer programs, which can include computational instructions that are executable to cause a computing system to perform certain tasks, functions, and / or activities. The amount of computational resources (e.g., processing resources and / or memory resources) consumed in executing an application can be measured in terms of a “workload.” As used herein, the term “workload” generally refers to the total computational resources consumed in the execution of an application performing a certain task, function, and / or activity. During the course of executing an application, multiple sub-applications, subroutines, etc. can be executed by a computing system. The amount of computational resources consumed in executing an application (including sub-applications, subroutines, etc.) can be referred to as a workload.
[0020] Some applications that can produce high-demand workloads include applications that process data, such as images and / or videos, in real-time. Such applications can request the use of large amounts of computational resources and thus produce high-demand workloads, especially when high-quality images and / or videos are requested to be processed in real-time to correct defects in the images and / or videos. Some examples of these kinds of applications can include medical diagnostic imaging applications, which can include examining a particular portion of a living being, such as a human body, where images and / or videos are captured in real-time for the portion and processed to perform a blood imaging technique.
[0021] As workloads demand more and more, especially considering improvements in broadband cellular network technology, issues associated with optimization of workload processing can be further exacerbated in mobile computing devices (e.g., smartphones, tablet computers, phablets, and / or Internet of Things (IoT) devices, etc.), where physical space limitations can be available for the amount of processing resources and / or memory resources of the device. Additionally, in some approaches, performing high-demand workloads using a mobile computing device can quickly consume battery resources available to the mobile computing device and / or produce undesirable thermal behavior of the mobile computing device (e.g., the mobile computing device can become too hot to operate in a stable manner, etc.).
[0022] As broadband cellular network technology has developed, higher resource demands can be placed on devices connected to broadband cellular networks. This can be attributed to an increase in available bandwidth associated with broadband cellular networks (referred to herein for brevity as "networks"), which can in turn result in higher download speeds, and thus increased data traffic associated with devices connected to the networks. Such increased data traffic can further result in a greater amount of data received, stored, and / or processed within devices connected to the networks.
[0023] Additionally, the potential for increased data traffic associated with devices connected to networks (e.g., mobile computing devices) can allow for increasingly complex applications (e.g., computing applications designed to cause a computing device to perform one or more specific functions or tasks) to be executed on the devices. Execution of such applications can in turn generate high-demand workloads, which can strain computing resources, and more specifically, computing resources allocated to such devices in some conventional approaches.
[0024] To attempt to execute high-demand workloads on mobile computing devices, some approaches can include adjusting performance of the mobile computing devices during execution of some kinds of workloads to ensure that sufficient computing resources are available to execute the high-demand workloads. Additionally, some approaches can include adjusting performance of the mobile computing devices during execution of some kinds of workloads to attempt to mitigate adverse effects on battery consumption and / or thermal behavior. However, such approaches can thus only use a subset of available computing resources and / or can fail to take advantage of available computing resources. This can be particularly problematic in mobile computing devices, as mentioned above, which can already feature reduced computing resources due to space constraints as compared to, for example, desktop computing devices.
[0025] In contrast, embodiments described herein can provide hardware circuitry (e.g., controllers, processors, etc.) that can monitor and / or determine characteristics of workloads executed in computing systems or mobile computing devices when data corresponding to the workloads is stored in different types of memory devices. Based on the monitored or determined characteristics of the workloads, the hardware circuitry can write at least a portion of the workloads to different types of memory devices. For example, if a workload is executed when data corresponding to the workload is stored in a volatile memory device, and if the hardware circuitry determines that execution of the workload can be optimized if the data corresponding to the workload is stored in a non-volatile memory device, the hardware circuitry can cause at least a portion of the data corresponding to the workload to be written to the non-volatile memory device. Such dynamic determination of workload characteristics and subsequent allocation of workloads to memory devices containing different types of media can be particularly beneficial in mobile computing systems, particularly as more and more processing resource-intensive workloads are executed on mobile computing devices.
[0026] Non-limiting examples of how workloads can be optimized can include optimizing battery consumption of a computing system, bandwidth associated with a computing system, compute resource consumption associated with a computing system, and / or speed at which a computing system executes a workload, etc. For example, if a computing system is a mobile computing device (e.g., a smartphone, an IoT device, etc.), battery power of the computing device can be quickly consumed when executing workloads that involve certain types of high power consumption memory devices. Thus, to optimize battery power consumption of, for example, a mobile computing device, hardware circuitry can cause a write of at least a portion of data corresponding to a workload to a memory device that is characterized by consuming lower power when executing the workload.
[0027] Another non-limiting example of how workloads can be optimized can include optimizing execution of a workload by utilizing memory devices and / or media types that exhibit different memory capacity and bandwidth capacity. For example, memory devices that exhibit high capacity but low bandwidth (e.g., NAND memory devices) can be utilized to execute some types of workloads (or portions thereof), while memory devices that exhibit high bandwidth but low capacity (e.g., 3D stacked SDRAM memory devices) can be utilized to execute some types of workloads (or portions thereof). By utilizing memory devices that exhibit high capacity but low bandwidth or high bandwidth but low capacity for different workloads, embodiments herein can optimize the amount of time, processing resources, and / or power consumed in executing resource-intensive applications in a computing device or a mobile computing device. However, embodiments are not limited thereto, and other examples of optimizing execution of workloads in accordance with the present disclosure are described in greater detail herein.
[0028] As described in greater detail herein, embodiments can further optimize execution of workloads in a mobile computing system by writing data associated with a workload to a memory device based on a characteristic of the data (e.g., an access frequency of data involved in executing the workload). The access frequency of data can refer to an amount of accesses (e.g., reads, writes, etc.) of the data involved in executing a workload. Reference can be made herein to access frequency of data in terms of “hot data” and “cold data.” As used herein, “cold data” refers to a particular memory object that has not been accessed for a long duration of time relative to other memory objects read from a memory device. As used herein, “hot data” refers to a particular memory object that has been frequently accessed relative to other memory objects read from a memory device.
[0029] For example, if certain data involved in executing a workload is determined to be “hot,” such data can be written to a memory device that includes a media type that is well-suited for fast access of data. A non-limiting example of a memory device described herein that hot data can be written to during execution of a workload is a volatile memory device, such as a DRAM device.
[0030] In contrast, if certain data involved in executing a workload is determined to be "cold," such data can be written to a memory device that contains a media type that is well suited for storing data that is infrequently accessed. A non-limiting example of a memory device described herein to which cold data can be written during execution of a workload is a non-volatile memory device, such as a NAND flash device.
[0031] In the following detailed description of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration embodiments of the disclosure that can be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments can be utilized and that process, electrical, and structural changes can be made without departing from the scope of the present disclosure.
[0032] As used herein, designators such as "N," "M," etc., specifically with respect to the designators of the figures in the drawings, indicate that a number of the particular feature so designated can be included. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms "a," "an," and "the" can include both singular and plural referents unless the context clearly dictates otherwise. Additionally, "a number of," "at least one," and "one or more" (e.g., a number of memory banks) can refer to one or more memory banks, while "a plurality of" refers to more than one such thing.
[0033] Further, the word "may" is used throughout this application in a permissive sense (i.e., having the potential to, being able to), not in a mandatory sense (i.e., must). The term "include," and derivations thereof, means "including, but not limited to." The terms "coupled" and "coupling" mean to be directly or indirectly connected or linked by way of another component or element. The terms "data" and "data values" can be used interchangeably herein and can have the same meaning, depending on the context.
[0034] The drawings herein are not necessarily drawn to scale of one another. The drawings herein follow a numbering convention in which the first digit or digits correspond to the figure number and the remaining digits identify an element or component in the drawing. Similar elements or components between different figures can be identified by the use of similar digits. For example, 104 can represent an element "04" in Figure 1 Figure 2 Similar elements in the various figures can be denoted by like reference numerals. Generally, a plurality of similar elements in the various figures can be denoted by a single reference numeral followed by a hyphen and a second numeral. For example, elements 544-1 through 544-N (or in the alternative 544-1,..., 544-N) can generally be referred to as 544. As will be appreciated, elements shown in various embodiments herein can be added, exchanged, and / or removed to provide a number of additional embodiments of the present disclosure. Additionally, the proportions and / or relative dimensions of the elements provided in the figures are intended to illustrate certain embodiments of the present disclosure and should not be taken in a limiting sense.
[0035] Figure 1 is a functional block diagram in the form of a computing system 100 including devices in accordance with a number of embodiments of the present disclosure, including a host 102 and a memory system 104. As used herein, a "device" can refer to, without limitation, any one or a combination of structures, such as a circuit or circuitry, a die or dies, a module or modules, a device or devices, or a system or systems. In some embodiments, the computing system 100 can be a mobile computing system (e.g., a mobile computing device such as the mobile computing device 501 shown in Figure 5 Figure 2 Figure 2
[0036] The memory system 104 can include volatile memory and / or non-volatile memory. In a number of embodiments, the memory system 104 can include a multi-chip device. The multi-chip device can include a number of different memory devices 123, 125, and / or 227, which can include a number of different memory types and / or memory modules. For example, the memory system can include non-volatile or volatile memory on any type of module. As shown in Figure 1 The computing system 100 can include a controller 120, which can include a processor 122. Each of the components (e.g., the host 102, the controller 120, the processor 122, and / or the memory devices 123, 125) can be individually referred to herein as a "device."
[0037] The memory system 104 can provide main memory for the computing system 100, or can be used as additional memory and / or storage throughout the computing system 100. The memory system 104 can include one or more memory devices 123, 125, which can include volatile and / or non-volatile memory units. For example, at least one of the memory devices 123, 125 can be a flash array having a NAND architecture. Further, at least one of the memory devices 123, 125 can be a dynamic random access array of memory units. Embodiments are not limited to a particular type of memory device. For example, the memory system 104 can include RAM, ROM, DRAM, SDRAM, PCRAM, RRAM, and / or flash memory (e.g., NAND and / or NOR flash memory devices), etc.
[0038] However, embodiments are not so limited, and the memory system 104 can include other non-volatile memory devices 123, 125, such as non-volatile random access memory devices (e.g., NVRAM, ReRAM, FeRAM, MRAM, PCM), “emerging” memory devices such as resistive variable (e.g., 3D cross-point (3D XP)) memory devices, memory devices including a self-selecting memory (SSM) cell array, memory devices operating according to Compute Express Link (CXL), etc., or combinations thereof.
[0039] Resistive variable memory devices can perform bit storage based on changes in bulk resistance with a stackable cross-gridded data access array. Additionally, resistive variable non-volatile memory can perform in-place write operations, where a non-volatile memory unit can be programmed without prior erasure of the non-volatile memory unit, as compared to multiple flash-based memories. Self-selecting memory cells can include memory cells having a single chalcogenide material that acts as both a switch and a storage element of the memory cell, as compared to flash-based memories and resistive variable memories.
[0040] In some embodiments, the memory system 104 can be a Compute Express Link (CXL) compliant memory system (e.g., the memory system can include a PCIe / CXL interface). CXL is a high-speed central processing unit (CPU) to device and CPU to memory interconnect designed to facilitate next generation data center performance. CXL technology maintains memory coherency between CPU memory space and memory on attached devices, which allows resource sharing for higher performance, reduced software stack complexity, and lower overall system cost.
[0041] As accelerators are increasingly used to supplement CPUs to support emerging applications such as artificial intelligence and machine learning, CXL is designed as an industry open standard interface for high-speed communication. CXL technology is built on Peripheral Component Interconnect Express (PCIe) infrastructure, which utilizes the PCIe physical and electrical interface to provide advanced protocols in areas such as input / output (I / O) protocols, memory protocols (e.g., initially allowing a host to share memory with an accelerator), and coherency interfaces. In some embodiments, CXL technology can include a plurality of I / O lanes configured to transfer a plurality of commands to or from circuitry external to a memory controller at a rate of about thirty-two (32) gigatransfers per second. In another embodiment, CXL technology can include a Peripheral Component Interconnect Express (PCIe) 5.0 interface coupled to the plurality of I / O lanes, where the memory controller is to receive, via the PCIe 5.0 interface, a command involving at least one of the memory device, a second memory device, or any combination thereof in accordance with a compute express link memory system.
[0042] As shown in Figure 1 Memory devices 123, 125 include different types of memory devices, as shown in
[0043] As shown in Figure 1 Host 102 can be coupled to memory system 104, as shown in Figure 1In particular embodiments, memory system 104 is coupled to host 102 via channel 103, which can additionally be coupled to controller 120 and / or processor 122 of memory system 104. Controller 120 and / or processor 122 are coupled to memory devices 123, 125 via channels 105, 107. In some embodiments, each of memory devices 123, 125 is coupled to controller 120 and / or processor 122 by one or more respective channels 105, 107, such that each of memory devices 123, 125 can receive messages, commands, requests, protocols, or other signaling that conform to the type of memory device 123, 125 coupled to controller 120 (e.g., messages, commands, requests, protocols, or other signaling that conform to the media type 124, 126 of memory device 123, 125).
[0044] Computing system 100 can further include imaging device 121. Imaging device 121 can be communicatively coupled to host 102 and / or memory system 104 (e.g., controller 120 and / or processor 122). Imaging device 121 can be a camera, an ultrasound scanning device, an ultrasound device, a stereoscopic imaging device, a magnetic resonance imaging device, an infrared imaging device, or other imaging device that can capture data including images or image streams (e.g., streaming video and / or “live streaming video”) in real time and transmit information corresponding to the images and / or image streams to computing system 100. Generally, an imaging device can be any mechanical, digital, or electronic imaging device; a still camera; a camcorder; a motion picture camera; or any other instrument, apparatus, or format capable of recording, storing, or transmitting images, video, and / or information.
[0045] As used herein, the term “live streaming video” and variations thereof generally refers to a sequence of images that are captured and processed, reproduced, and / or broadcasted simultaneously (or nearly simultaneously). In some embodiments, “live streaming” video can be referred to in alternatives herein as “data captured by an imaging device” or “data captured from an imaging device.” Further, as used herein, the term “streaming video” and variations thereof generally refers to a sequence of images that are captured by an imaging device and subsequently processed, reproduced, and / or broadcasted. In some embodiments, “streaming” video can be referred to in alternatives herein as “data captured by an imaging device” or “data captured from an imaging device.”
[0046] Generally, such data (e.g., images, image streams, and / or "live stream" video) captured by the imaging device can be displayed or broadcast on a viewing device, and / or processed by a processor within a threshold period of time after capture by the imaging device. In some embodiments, data captured by the imaging device can be displayed, broadcast, and / or processed within a threshold period of time relative to capture by the imaging device, the threshold period of time being on the order of seconds or minutes, rather than hours or days. These data (e.g., images and / or video streams) can include any real-time or recorded media content that is communicated to a computing system (e.g., a mobile computing device) via a connection path (e.g., a wired communication channel) and / or a non-wired communication channel (e.g., the Internet) and displayed or broadcast in real-time by the computing system. Thus, as described in greater detail herein, data (e.g., images of blood cells) can be captured by the imaging device and then stored in a memory coupled to the imaging device, processed by a processor associated with the memory device and subsequently broadcast, and / or data can be captured by the imaging device, stored in a memory coupled to the imaging device, processed by a processor associated with the memory device, and / or broadcast in real-time as the data is captured by the imaging device (or in near real-time based on latency of transmission between the various components described herein).
[0047] In some embodiments, the imaging device 121 can capture data including images used in a medical self-diagnostic test, such as images and / or streaming video (e.g., live streaming video). As used herein, a "medical self-diagnostic test" generally refers to a medical test performed by a patient from a location other than a physician's office, clinic, hospital, or other health care service location. Generally, the patient performs the medical self-diagnostic test using equipment owned by the patient and that is typically not a medical grade instrument (e.g., a mobile computing device in some embodiments of the present disclosure). For example, embodiments herein describe the use of a smartphone or other mobile computing device in the performance of a medical self-diagnostic test. In at least one embodiment, the medical self-diagnostic test can include executing an application to perform a blood imaging operation or technique.
[0048] In some embodiments, images and / or streaming video captured by imaging device 121 can include images and / or streaming video of blood flowing through one or more blood vessels (e.g., blood vessels), etc. Such images and / or streaming video can be captured by imaging device 121 and processed locally within memory system 104 as part of, for example, a medical self-diagnostic test to detect and / or analyze abnormalities in the blood. By utilizing aspects of the present disclosure, such medical self-diagnostic tests can be performed without visiting a doctor or hospital, which can reduce wait times for medical patients and / or can preemptively capture medical information of medical professionals for later review. Additionally, such medical self-diagnostic tests can provide information over time that can be merged over time to aid in early detection of medical issues and / or produce a consistent record of medical abnormalities that can be later analyzed by a doctor or other clinical professional without visiting a doctor’s office.
[0049] For example, magnetic resonance images or other large, detailed, high-bandwidth images and / or video of blood within a blood vessel (e.g., blood vessels) can be captured by imaging device 121 and processed by memory system 104 to detect, monitor, or otherwise analyze characteristics of the blood to determine whether any abnormalities exist with respect to the blood without visiting a doctor’s office or hospital. This can allow for early detection and monitoring of abnormalities of the blood to produce a consistent record of blood health to aid in early detection and treatment of various diseases.
[0050] Traditionally, capture and processing / analysis of such medical abnormalities is a highly specialized and compute resource intensive process. For example, applications to perform medical imaging and / or process medical imaging data, and thus workloads corresponding thereto, can be extremely compute resource intensive. One reason for this is that, for medical imaging purposes, the level of detail captured in images and / or video can be very detailed and thus memory resource intensive (e.g., due to the details captured in such images and / or video, the file size corresponding to the images and / or video can be relatively large as compared to, for example, a simple photograph). Another reason for the resource intensive nature of execution of applications and corresponding workloads to process medical imaging data is that the details and size of the data (e.g., file size associated with medical imaging data) can require multiple resource intensive operations when processing.
[0051] However, the embodiments described herein may allow selective processing of workloads relating to images and / or videos corresponding to those captured by imaging device 121, such that the captured imaging data and / or workloads corresponding to the execution of applications relating to said images and / or videos are allocated to memory devices 123, 125, 227 to optimize the performance of memory system 104, enabling the medical self-diagnostic tests described herein to be implemented using mobile computing devices such as smartphones and other mobile computing devices described herein.
[0052] In some embodiments, images and / or videos captured by imaging device 121 and processed by memory system 104 may be uploaded or otherwise transmitted to medical professionals to assist in building a long-term record of the development of potential medical abnormalities, and to provide notification of these records to medical professionals even when patients do not regularly visit doctors or hospitals.
[0053] Host 102 may be a host system, such as a personal laptop computer, desktop computer, digital camera, smartphone, memory card reader, and / or device with Internet of Things (IoT) functionality, as well as various other types of hosts. However, in some embodiments, host 102 is a mobile computing device, such as a digital camera, smartphone, memory card reader, and / or device with Internet of Things (IoT) functionality, as well as various other types of hosts (e.g., in some embodiments, host 102 is not a personal laptop computer or desktop computer). Host 102 may include a system motherboard and / or backplane and may include memory access devices, such as a processor (or processing device).
[0054] Those skilled in the art will understand that a "processor" can be one or more processors, such as a parallel processing system, several coprocessors, etc. System 100 may include a single integrated circuit, or one or more of host 102, memory system 104, control circuitry system 120, and / or memory devices 123, 125 may be on the same integrated circuit. For example, computing system 100 may be, for example, a server system and / or a high-performance computing (HPC) system and / or a portion thereof. Although Figure 1 The examples shown illustrate systems with a von Neumann architecture, but embodiments of this disclosure can be implemented in a non-von Neumann architecture that may not include one or more components typically associated with a von Neumann architecture (e.g., CPU, ALU, etc.).
[0055] Memory system 104 may include controller 120, which may include processor 122. Processor 122 may be provided in the form of an integrated circuit, such as an application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), reduced instruction set computing device (RISC), advanced RISC machine, system-on-a-chip, or other combination of hardware and / or circuit systems configured herein to perform the operations described in more detail. In some embodiments, processor 122 may include one or more processors (e.g., processing devices, coprocessors, etc.).
[0056] Processor 122 may perform operations to monitor and / or determine the characteristics of workloads running on memory system 104. These characteristics may include information such as bandwidth consumption, memory resource consumption, access frequency (e.g., whether data is hot or cold), and / or power consumption during workload execution. Processor 122 may control the writing of at least a portion of data to different memory devices 123, 125 to optimize workload execution, balance workloads across different memory devices 123, 125 for media management purposes, and / or optimize battery consumption of computing system 100.
[0057] In a non-limiting example, the device (e.g., computing system 100) may include a first memory device 123 comprising media 124 of a first type and a second memory device 125 comprising media 126 of a second type. In some embodiments, the first memory device 123, the second memory device 125, and the processor 122 may reside in a mobile computing device such as a smartphone or other mobile computing device (e.g., herein). Figure 5 The mobile computing device 501 shown in the figure. Processor 122 can be coupled to a first memory device 123 and a second memory device 125. Processor 122 can receive information captured by imaging device 121 that can be coupled to processor 122.
[0058] As used herein, the term "residing on" means that something is physically located on a particular component. For example, in some embodiments, a first memory device 123, a second memory device 125, and / or a processor 122 may reside in a smartphone (e.g., as described herein). Figure 5 The computing device 100 and / or mobile computing device 501 shown herein refers to the first memory device 123, the second memory device 125, and / or the processor 122 being physically coupled to a smartphone (e.g., as shown herein). Figure 5 This refers to the case where the computing device 100 and / or mobile computing device 501 shown are physically located within a smartphone. The term "residing on" may be used interchangeably herein with other terms such as "deployed on" or "located on".
[0059] In this example, the processor 122 can receive an application launch indicator. The application launch indicator can include a signal, command, instruction, or the like, that indicates to the processor 122 that an application is to be executed to perform a medical self-test operation (e.g., for detecting abnormalities in blood cells 544, 546, such as shown in FIG. 5B herein). Figure 5 In some embodiments, the application launch indicator can include a signal, command, instruction, or the like, that indicates to the processor 122 that a signal, command, instruction, or the like, containing an image and / or video that is greater than a threshold number of pixels, greater than a threshold file size, greater than a threshold image resolution, and the like, is to be received by the processor 122 and / or the memory system 104.
[0060] In response to receiving the application launch indicator, the processor 122 can reallocate computing resources between the first memory device 123 and the second memory device 125 based at least in part on determined characteristics of the first memory device 123 and the second memory device 125. The processor 122 can determine the characteristics of the first memory device 123 and the second memory device 125 prior to or during execution of the application. In some embodiments, the determined characteristics of the first memory device 123 and the second memory device 125 can include bandwidth, memory access time, latency, and / or memory cell density of the first memory device 123 and the second memory device 125, among other characteristics.
[0061] The processor 122 can receive data captured by the imaging device 121. As described in greater detail herein, the data can include images and / or videos of blood cells to be analyzed as part of execution of an application to detect abnormalities in the blood cells. In some embodiments, the processor 122, the imaging device 121, the first memory device 123, and the second memory device 125 are resident on a mobile computing device (e.g., the mobile computing device 501 shown in FIG. 5A herein). In such embodiments, the processor 122 can receive images of blood flow in a blood vessel (e.g., the blood vessel 542 shown in FIG. 5B herein) as part of the data captured by the imaging device 121, and execute the application to determine whether an abnormality is detected in the received images of blood flow. Figure 5 In some embodiments, the processor 122 can receive images of blood flow in a blood vessel (e.g., the blood vessel 542 shown in FIG. 5B herein) as part of the data captured by the imaging device 121, and execute the application to determine whether an abnormality is detected in the received images of blood flow. Figure 5 In some embodiments, the processor 122 can receive images of blood flow in a blood vessel (e.g., the blood vessel 542 shown in FIG. 5B herein) as part of the data captured by the imaging device 121, and execute the application to determine whether an abnormality is detected in the received images of blood flow.
[0062] The processor 122 can write the data captured by the imaging device 121 to the first memory device 123 or the second memory device 125 based on the determined characteristics of the first memory device 123 and the second memory device 125. After the processor 122 has written the data to the first memory device 123 or the second memory device 125, the processor 122 can execute the application as the data captured by the imaging device 121 is written to the first memory device 123 or the second memory device 125.
[0063] For example, in some embodiments, processor 122 can process received information captured by imaging device 121. In some embodiments, the operations for processing received information captured by imaging device 121 can involve an application having a particular workload corresponding thereto. When the workload is written to first memory device 123 or second memory device 125, processor 122 can determine a characteristic of the workload. In some embodiments, the characteristic of the workload can include at least one of a frequency of access of data associated with the workload, a latency associated with execution of the workload, and / or an amount of processing resources consumed in executing the workload. In some embodiments, the application and / or workload can involve processing data received and / or captured by imaging device 121.
[0064] Processor 122 can determine, based on the characteristic of the workload, whether to write at least a portion of data associated with the workload to the other one of first memory device 123 or second memory device 125 and control an allocation of execution of the workload written to the other one of first memory device 123 or second memory device 125 such that at least a portion of the workload is executed subsequently after the at least a portion of the workload has been written to the other one of first memory device 123 or second memory device 125. In some embodiments, the subsequently executed workload can involve processing data received and / or captured by imaging device 121.
[0065] In some embodiments, processor 122 can determine that the application launch indicator corresponds to execution of an application to process data captured by the imaging device that exceeds a pixel threshold number and / or to determine a characteristic of first memory device 123 and second memory device 125. In some embodiments, processor 122 can perform operations to process an image or a video by replacing at least one pixel in the image or the video, correcting a blurry portion of the image or the video, or removing noise in the image and / or the video. For example, during image capture, one or more pixels in an image or a video can be damaged, which can cause the image to be distorted, blurry, or include other types of noise. By performing operations to replace a damaged portion (e.g., pixel) of an image, the image or video quality can be restored and / or improved using circuitry that is entirely resident on the memory system (e.g., without transferring the image and / or video to external circuitry, such as host 102). In some embodiments, the image and / or video can be received from imaging device 121 and processed in a live streaming manner. For example, the video can be a live video captured by imaging device 121 and written to memory system 104 in real-time.
[0066] As mentioned above, the first memory device 123 or the second memory device 125 can be a non-persistent (e.g., volatile) memory device, and the other of the first memory device 123 or the second memory device 125 can be a persistent (e.g., non-volatile) memory device. Further, as mentioned above, in some embodiments, the first type of memory or the second type of memory, or both, includes a set of memory cells that exhibit different storage characteristics. For example, the first memory device 123 can have a first media type 124, and the second memory device 125 can have a second media type 126 associated therewith.
[0067] Continuing with the above non-limiting example, the first memory device 123 or the second memory device 125 can be a NAND flash memory device that includes a set of single-level memory cells (SLC) and a set of multi-level memory cells (MLC), as shown in FIGS. 1, 2, 3, and 4, and described herein. In such embodiments, the processor 122 can write at least a portion of data associated with a workload to the set of SLC memory cells or the set of MLC memory cells based at least in part on receiving an application launch indicator. In some embodiments, the SLC set can be configured to store a lookup table to facilitate writing at least a portion of data to the other of the first memory device 123 or the second memory device 125. Figure 3 and 4 In such embodiments, the processor 122 can write at least a portion of data associated with a workload to the set of SLC memory cells or the set of MLC memory cells based at least in part on receiving an application launch indicator. In some embodiments, the SLC set can be configured to store a lookup table to facilitate writing at least a portion of data to the other of the first memory device 123 or the second memory device 125.
[0068] As used herein, the term “lookup table” generally refers to a data structure that contains index information that can correspond to a desired output format of data written to the memory system 104. For example, a lookup table can include pre-fetch information that can be used by the memory system 104 to output various types of data processed by the memory system in a requested format. In some embodiments, a lookup table can be included in a flash memory device, such as the SLC portion 335 of the NAND memory device 333. The lookup table can store data corresponding to artificial intelligence and / or machine learning applications. In such embodiments, it can be beneficial to store the lookup table in the SLC portion of the memory device, as SLC memory generally provides high access speed and accurate storage. In some embodiments, such artificial intelligence and / or machine learning applications can be executed in conjunction with the execution of the operations described herein.
[0069] Figure 1Embodiments of the present disclosure can include additional circuitry not shown so as not to obscure embodiments of the present disclosure. For example, the memory system 104 can include address circuitry to latch address signals provided over the I / O circuitry 130. The address signals can be received and decoded by row and column decoders to access the memory system 104 and / or memory devices 123, 125. It should be noted by those skilled in the art that the number of address input connections can depend on the density and architecture of the memory system 104 and / or memory devices 123, 125.
[0070] Figure 2 For another functional block diagram in the form of a computing system 200 including a device including a host 202 and a memory system 204 in accordance with a number of embodiments of the present disclosure, the device includes a host 202 and a memory system 204. In some embodiments, the computing system 200 can be a mobile computing system (e.g., the mobile computing device 501, such as a smartphone, a tablet computer, a phablet, and / or an IoT device, etc.). The memory system 204 can include a number of different memory devices 223, 225, 227, which can include one or more different media types 223, 225, 227. The different memory devices 223, 225, and / or 227 can include one or more memory modules (e.g., a single in-line memory module, a dual in-line memory module, etc.). The host 202, the memory system 204, the controller 220, the processor 222, the memory devices 223, 225, and / or the media types 224, 226 can be similar to the host 102, the memory system 104, the controller 120, the processor 122, the memory devices 123, 125, and / or the media types 124, 126 shown in FIG. 1, as described herein. Figure 1
[0071] In some embodiments, each of the memory devices 223, 225, and 227 can be a different type of memory device. Thus, in some embodiments, each of the memory devices 223, 225, and 227 can include a different media type 224, 226, and 228. In a non-limiting example, the memory device 223 can be a volatile memory device, such as a DRAM device, and can include a media type 224 corresponding to a DRAM memory device (e.g., an array of memory cells including at least one capacitor and at least one transistor). Continuing with this example, the memory device 225 can be a flash memory device, such as a NAND memory device, and can include a media type 226 corresponding to a NAND memory device (e.g., an array of floating gate metal-oxide semiconductor field effect transistors). In this non-limiting example, the memory device 227 can be an emerging memory device (e.g., a resistive random access memory device, a phase change memory device, a spin transfer torque memory device, etc.) and can include a media type 228 corresponding to an emerging memory device. Figure 4 The emerging memory device 439 shown above, such as the emerging memory device described above, may include a media type 228 corresponding to the emerging memory device (e.g., an array of resistive variable memory cells configured to perform bit storage based on changes in the volume resistance associated with the resistive variable memory cells, an array of selectable memory cells, an array of memory cells operating according to the CXL protocol, etc.).
[0072] Memory devices 223, 225, and 227 may be configured to read, write, and / or store data corresponding to one or more workloads executed by computing system 200, such as images of blood as described herein. Applications corresponding to the workloads may be executed, for example, by processor 222, to write data to memory devices 223, 225, and 227 for the execution of the application and / or workload. As described above, controller 220 may control the writing of at least a portion of the data to a different memory device than the memory device in which data was initially written based on the characteristics of the workload.
[0073] For example, if data corresponding to a specific workload is stored in memory device 223, controller 220 and / or processor 222 may, in response to determining that the workload can be performed (e.g., optimized) more efficiently using different memory devices, write at least a portion of the data corresponding to the specific workload to memory device 225 and / or memory device 227.
[0074] In a non-limiting instance, the system (e.g., in this document) Figure 5 The computing system 200 and / or mobile computing device 501 shown may include a memory system 204, which includes a processor 222, a first memory device 223 including a first type of media 224, a second memory device 225 including a second type of media 226, and a third memory device 227 including a third type of media 228. In some embodiments, the first memory device 223 may be a dynamic random access memory device, the second memory device 225 may be a NAND flash memory device, and the third memory device 227 may be an emerging memory device, such as a CXL memory device, a 3D XP memory device, a custom cell memory device, etc., as described above.
[0075] In at least one embodiment, media type 224 includes a memory cell array comprising at least one capacitor and at least one transistor, media type 226 includes a floating gate metal-oxide-semiconductor field-effect transistor array, and media type 228 includes a variable-resistance memory cell array configured to perform bit storage based on changes in the bulk resistance associated with the variable-resistance memory cells.
[0076] An imaging device (e.g., imaging device 121 shown in Figure 1 The imaging device (e.g., imaging device 121 shown in Figure 5 The imaging device (e.g., imaging device 121 shown in
[0077] In response to generating the application launch indicator, the processor 222 can reallocate computing resources among the first memory device 223, the second memory device 225, or the third memory device 227, or any combination thereof, based at least in part on characteristics of the first memory device 223, the second memory device 225, and the third memory device 227. As described herein, the processor 222 can determine characteristics of the first memory device 223, the second memory device 225, and the third memory device 227 prior to or during execution of the application, and the determined characteristics of the first memory device 223, the second memory device 225, and the third memory device 227 can include bandwidth, memory access time, latency, memory cell density, or any combination thereof, of the first memory device 223, the second memory device 225, and the third memory device 227. In some embodiments, the processor 222 can reallocate computing resources such that greater than a threshold amount of computing resources are available for use by a memory device exhibiting characteristics of processing and / or performing operations using images captured by the imaging device.
[0078] In response to generating the application launch indicator, the processor 222 can write at least a portion of one or more images captured by the imaging device to the first memory device 223, the second memory device 225, or the third memory device 227, or a combination thereof. In some embodiments, the processor 222 can execute the application corresponding to detecting abnormalities in at least a portion of a biological object while one or more images captured by the imaging device are written to the first memory device 223, the second memory device 225, or the third memory device 227, or any combination thereof.
[0079] As described herein, in some embodiments, the memory system 204 and the imaging device reside in a mobile computing device (e.g., mobile computing device 100 shown in Figure 5on the mobile computing device 501) shown in FIG. 6. In such embodiments, the processor 222 can cause results corresponding to execution of the application to detect abnormalities in at least portions of the living being to be transmitted to a hospital, a doctor's office, or an emergency provider, or any combination thereof. However, embodiments are not so limited, and in some embodiments, the mobile computing device can include a display screen, and the processor 222 can generate and display on the display screen dietary recommendations based at least in part on results of execution of the application to detect abnormalities in at least portions of the living being.
[0080] Continuing with this example, in embodiments in which the memory system 204 and imaging device reside on a mobile computing device, the processor 222 can execute one or more sets of machine learning instructions to determine characteristics of the first memory device 223, the second memory device 225, and the third memory device 227 based at least in part on monitored benchmark data associated with the first memory device 223, the second memory device 225, and the third memory device 227. As used herein, the term "benchmark data" generally refers to data that can be used to test characteristics of a memory device 204, such as read / write speed, throughput, bandwidth, accuracy, and / or data retention, among other test data indicative of overall performance of the memory device 204. In such embodiments, the processor 222 can reallocate computing resources among the first memory device 223, the second memory device 225, or the third memory device 227, or any combination thereof, based at least in part on the determined characteristics of the first memory device 223, the second memory device 225, and the third memory device 227.
[0081] In some embodiments in which the memory system 204 and imaging device reside on a mobile computing device, the processor 222 can determine characteristics of one or more received images based on images previously captured by the imaging device, and generate an application launch indicator based on the determined characteristics of the one or more images. For example, the processor 222 can determine that an image captured by the imaging device is similar to an image previously captured by the imaging device, and determine that an application corresponding to processing the newly captured image is likely to be executed in response to receiving similar images based on past execution of such an application.
[0082] As described herein, the memory system 204 and the imaging device can reside on a mobile computing device, and the processor 222 can receive data (e.g., images, image streams, and / or real-time streaming information) from the imaging device and perform a medical self-diagnostic test, and the processor 222 can write at least a portion of the data from the imaging device to at least one of the other memory device 223, the memory device 225, or the memory device 227 based at least in part on a determined category associated with the medical self-diagnostic test. In this example, the processor 222 can perform a workload using at least a portion of the data captured by the imaging device written to the memory device 223, the memory device 225, or the memory device 227, the workload including at least a portion of the data captured from the imaging device.
[0083] In such examples, the processor 222 can determine a characteristic of the performed workload by monitoring at least one of a frequency of access of data associated with the workload, a latency associated with the execution of the workload, and / or an amount of processing resources consumed in executing the workload as the data is written to the memory device 223, the memory device 225, or the memory device 227, and write at least a portion of the data associated with the workload to at least one of the other memory device 223, the memory device 225, or the memory device 227 based at least in part on the determined frequency of access of data associated with the workload, the latency associated with the execution of the workload, and / or the amount of processing resources consumed in executing the workload.
[0084] In some embodiments, at least a portion of the data written to the memory device 223, the memory device 225, or the memory device 227 is formatted according to a universal number format or a posit format. The universal number format, for example, includes a subset of sign bits, a subset of state bits, a subset of mantissa bits, and a subset of exponent bits as compared to an IEEE 754 floating point or fixed point binary format that includes a subset of sign bits, a subset of mantissa bits, and a subset of exponent bits. This can allow for a greater accuracy, precision, and / or dynamic range of the universal number format, for example, than a floating point number or other number format. Additionally, the posit can reduce or eliminate overflow, underflow, NaN, and / or other corner cases associated with floating point numbers and other number formats. Furthermore, using a posit can allow for a fewer number of bits to be used to represent a numerical value (e.g., a number) as compared to a floating point number or other number format.
[0085] As used herein, "precision" refers to the amount of bits in a bit string used to perform a calculation using the bit string. For example, a bit string can be referred to as having 16-bit precision if each bit in the bit string is used when performing a calculation using the 16-bit bit string. However, the bit string can be referred to as having 8-bit precision if only 8 bits of the bit string are used when performing a calculation using the 16-bit bit string (e.g., if the first 8 bits of the bit string are zero). As the precision of a bit string increases, calculations can be performed with higher accuracy. Conversely, as the precision of a bit string decreases, calculations can be performed using lower accuracy. For example, an 8-bit bit string can correspond to a data range composed of two hundred fifty-five (256) precision steps, while a 16-bit bit string can correspond to a data range composed of sixty-three thousand five hundred thirty-six (63,536) precision steps.
[0086] As used herein, "dynamic range" or "dynamic range of data" refers to the ratio between the maximum and minimum values that can be used with a bit string having a particular precision associated therewith. For example, the maximum numerical value that can be represented by a bit string having a particular precision associated therewith can determine the dynamic range of the data format of the bit string. For a general number (e.g., posit) format bit string, the dynamic range can be determined by the numerical value of the exponent bit subset of the bit string.
[0087] The dynamic range and / or precision can have a variable range threshold associated therewith. For example, the dynamic range of data can correspond to the application using the data and / or the various calculations using the data. This can be due to the fact that one application can expect a different dynamic range than another application, and / or because some calculations can require different dynamic ranges of data. Accordingly, embodiments herein can allow the dynamic range of data to be altered to suit the requirements of different applications and / or calculations. In contrast to approaches that do not allow the dynamic range of data to be manipulated to suit the requirements of different applications and / or calculations, embodiments herein can improve resource usage and / or data precision by allowing the dynamic range of data to be changed based on the application and / or calculations to be used with the data.
[0088] Figure 3 A functional block diagram in the form of a device including a memory system 304 in accordance with a number of embodiments of the present disclosure. Figure 3 The memory system 304 is shown, which can be similar to the memory system 104 shown in Figure 1 and / or the memory system 204 shown in Figure 2 As shown in Figure 3 The memory system 304 includes a controller 320, which can be similar to the controller 120 shown in Figure 1 and / or the controller 220 shown in Figure 2The controller 220 shown herein and the DRAM memory device 331 (which may be similar to those shown herein) Figure 1 One of the memory devices 123, 125 shown and / or in Figure 2 One of the memory devices 223, 225, and 227 shown herein), and NAND memory device 333 (which may be similar to the one shown herein). Figure 3 One of the memory devices 123, 125 shown and / or in Figure 4 (One of the memory devices 223, 225, and 227 shown).
[0089] like Figure 4 As shown, the NAND memory device 333 may include various portions of memory cells, which may include a set of single-level memory cells (SLC) 335 and a set of multi-level memory cells (MLC), such as a set of three-level memory cells (TLC) 337, four-level cells (QCC), etc. In some embodiments, the controller may, based on the characteristics of the application involving the data (e.g., in response to receiving an application launch indicator), cause at least a portion of the data used by the application executing on the memory system 304 to detect abnormalities in the blood, corresponding to a sequence of images or pictures (e.g., images of blood cells in blood vessels), to be written to the SLC portion 335 and / or the TLC portion 337.
[0090] In some embodiments, as part of optimizing the performance of memory system 304 during application execution and corresponding workloads, data classified as hot data may be written to SLC portion 335, while data classified as cold data may be written to TLC portion 337, or vice versa. By selectively writing portions of data involved in the execution of the application to different memory portions of NAND memory device 333 (e.g., to SLC portion 335 and / or TLC portion 337), the performance of the computing system (particularly during the execution of the application described herein for detecting abnormalities in blood) can be improved compared to some methods. However, embodiments are not limited thereto, and in some embodiments, hot data may be written to DRAM memory device, colder data may be written to NAND memory device 333, and cold data may be written to emerging memory device 339.
[0091] For example, by selectively writing portions of data corresponding to workloads that benefit from fast execution to DRAM memory device 331, while writing portions of data corresponding to the execution of applications and workloads that may not benefit from fast execution to SLC portion 335 and / or TLC portion 337 and / or to emerging memory devices (e.g., Figure 4As noted above, in some embodiments, a portion of the workload can be written to an emerging memory device (e.g., an emerging memory device 439 as shown in FIG. 4B) within the memory system 404. As noted above, in some embodiments, a portion of the workload can be written to an emerging memory device (e.g., an emerging memory device 439 as shown in FIG. 4B) within the memory system 304. This can allow the workload to be distributed to memory devices within the memory system 304 that can allow the execution of the workload within the memory system 304 to be optimized quickly. For similar reasons, a portion of the workload can be written to an emerging memory device (e.g., an emerging memory device 439 as shown in FIG. 4B) within the memory system 404. Figure 4
[0092] In some embodiments, at least a portion of the SLC portion 335 of the NAND memory device 333 can be allocated for storing a lookup table. The lookup table can be a data structure containing index information that can correspond to a desired output format for data written to or from the memory system 304. For example, the lookup table can include prefetch information that can be used by the memory system 304 to output various types of data processed by the memory system 304 in a requested format. In some embodiments, the lookup table can facilitate writing at least a portion of data involved in a workload to one of the memory devices described herein.
[0093] Figure 1 Another functional block diagram in the form of a device including a memory system 404 in accordance with a number of embodiments of the present disclosure. Figure 2 The memory system 404 is shown, which can be similar to the memory system 104 as shown in FIG. 1A, the memory system 204 as shown in FIG. 2A, and / or the memory system 304 as shown in FIG. 3A. Figure 3 The memory system 404 is shown, which can be similar to the memory system 104 as shown in FIG. 1A, the memory system 204 as shown in FIG. 2A, and / or the memory system 304 as shown in FIG. 3A. Figure 4 The memory system 404 is shown, which can be similar to the memory system 104 as shown in FIG. 1A, the memory system 204 as shown in FIG. 2A, and / or the memory system 304 as shown in FIG. 3A. Figure 1 The memory system 404 is shown, which can be similar to the memory system 104 as shown in FIG. 1A, the memory system 204 as shown in FIG. 2A, and / or the memory system 304 as shown in FIG. 3A.
[0094] As shown in FIG. 4B, the memory system 404 includes a controller 420 (which can be similar to the controller 120 as shown in FIG. 1A, the controller 220 as shown in FIG. 2A, and / or the controller 320 as shown in FIG. 3A), DRAM memory devices 431 (which can be similar to one of the memory devices 123, 125 as shown in FIG. 1A, one of the memory devices 223, 225, 227 as shown in FIG. 2A, and / or one of the DRAM memory devices 331 as shown in FIG. 3A), NAND memory devices 433 (which can be similar to one of the memory devices 123, 125 as shown in FIG. 1A, one of the memory devices 223, 225, 227 as shown in FIG. 2A, and / or the NAND memory devices 333 as shown in FIG. 3A), and an emerging memory device 439 (which can be similar to one of the memory devices 123, 125 as shown in FIG. 1A, one of the memory devices 223, 225, 227 as shown in FIG. 2A, and / or the emerging memory device 439 as shown in FIG. 3B). Figure 2 Figure 3 Figure 1 Figure 2 Figure 3 Figure 1 Figure 2 Figure 3 Figure 1 Figure 2 Figure 3 one of the memory devices 123, 125 shown in Figure 5 one of the memory devices 223, 225, 227 shown in
[0095] The DRAM memory device 431 can include an array of memory cells including at least one transistor and one capacitor configured to store a charge corresponding to a single bit of data. The NAND memory device 433 can include various portions of memory cells, which can include a set of single-level memory cells (SLC) 435 and a set of multi-level memory cells (MLC), such as a set of triple-level memory cells (TLC) 437, which can be similar to those described herein in connection with Figure 5 the SLC portion 335 and the TLC portion 337 shown and described above.
[0096] The emerging memory device 439 can be an emerging memory device as described above. For example, the emerging memory device 439 can be a resistive variable (e.g., 3D cross-point (3D XP)) memory device, a memory device including a self-selecting memory (SSM) cell array, a memory device operating according to a CXL protocol, etc., or any combination thereof.
[0097] Figure 1 A diagram of a human medical self-diagnostic test subject 540 and a mobile computing device 501 according to a number of embodiments of the present disclosure is shown. As Figures 1 to 4 shown in FIG. 5, the mobile computing device 501 includes an imaging device 521, which can be similar to the imaging device 121 shown in FIG. 1 herein; and a memory system 504, which can be similar to the memory system 104, 204, 304, 404 shown in FIGS. 1-4 herein. In some embodiments, the mobile computing device 501 can be similar to the computing system 100 and / or the computing system 200 shown in FIGS. 1 and 2 herein, respectively. However, embodiments are not limited as such, and other areas of interest can include the nasal cavity, the stomach, the liver, the kidneys, the lungs, the brain, the muscles, the joints, the bones, and / or the ligaments, etc. Figure 1 Figure 5 Figure 2 2
[0098] The human medical self-diagnostic test subject 540 can include various areas of interest, such as areas of interest 541 with respect to the execution of medical self-diagnostic test operations, as indicated by the arrows between the mobile computing device 501 and the human medical self-diagnostic test subject 540. The area of interest 542 can be a blood vessel 542 through which blood cells 544-1, 544-2, through 544-N and / or 546-1 through 546-M flow.
[0099] As Figure 2 As shown in FIG. 5, imaging device 521 can receive information (e.g., images and / or video) related to region of interest 541. The information can be processed and / or analyzed within mobile computing device 501, e.g., using memory system 504 resident on mobile computing system 501. In some embodiments, the information (e.g., images and / or video) can be processed by mobile computing device 501 as part of the performance of a medical self-diagnostic test.
[0100] The information, which can include images and / or streaming (e.g., real-time streaming) video of blood cells 544, 546, can be processed by mobile computing system 501 in conjunction with the performance of one or more applications running on mobile computing device 501 to detect abnormalities in blood cells 544, 546. In some embodiments, blood cells 544 can indicate healthy blood cells, while blood cells 546 can indicate blood cells for which an abnormality has been detected (e.g., exhibiting characteristics indicative of blood cancer (e.g., leukemia, lymphoma myeloma, etc.), fluctuating blood glucose levels, fluctuating blood pressure levels, percentage of white blood cells to red blood cells, hemophilia, and / or anemia, among other abnormalities). As described above, the performance of such applications can generate high demand workloads. Accordingly, as described herein, the information can be selectively written to different memory devices (e.g., memory devices 223, 225, and / or 227 shown in Figure 5 herein), and thus to different media types (e.g., media types 224, 226, and / or 228 shown in Figure 6 herein), based on the characteristics of the workloads.
[0101] In some embodiments, the images and / or video can be processed and / or analyzed by mobile computing device 501 during the performance of the applications to analyze region of interest 541 shown in Figure 1 Although shown as a single region of interest 541 for clarity, it should be appreciated that other portions of human medical self-diagnostic test subject 540 can be analyzed. More specifically, any region of human medical self-diagnostic test subject 540 containing one or more blood vessels 542 can be analyzed to detect abnormalities in blood 544, 546 flowing through blood vessels 542.
[0102] Additionally, the images and / or videos can be processed and / or analyzed by the mobile computing device 501 to detect and / or replace one or more corrupted portions (e.g., pixels) of the images and / or videos to restore and / or improve the quality of the images and / or videos as part of the execution of the application to detect abnormalities in the blood 544, 546 in the blood vessels 542. For example, if portions of the images and / or videos are blurry or suffer from pixel degradation, the application to detect abnormalities in the blood 544, 546 can perform operations to restore and / or replace the pixels with the assistance of machine learning to improve the clarity and / or quality of the images and / or videos, followed by performing operations to detect abnormalities in the blood 544, 546.
[0103] Figure 1 A flow diagram representing an example method of corresponding to blood flow imaging is shown in accordance with a number of embodiments of the present disclosure. The method 650 can be performed by processing logic that can include hardware (e.g., a processor, processing device, control circuitry, dedicated logic, programmable logic, microcode, hardware of a device, and / or integrated circuits, etc.), software (e.g., instructions run or executed on a processor), or a combination thereof. Although shown in a particular sequence or order, unless otherwise specified, the order of the processes can be modified. Thus, the illustrated embodiments should be understood only as examples, and the illustrated processes can be performed in a different order, and some processes can be performed in parallel. Additionally, one or more processes can be omitted in various embodiments. Thus, not all processes are required in every embodiment. Other process flows are possible.
[0104] At block 651, the method 650 can include receiving, by a processor coupled to a first memory device including a first type of media and a second memory device including a second type of media, an indication corresponding to a launch of an application. In some embodiments, the indication corresponding to the launch of the application can be an application launch indicator that indicates that the execution of the application will involve processing an image that is larger than a threshold image size, has a resolution that is higher than a threshold resolution, or has a bandwidth consumption that is higher than a threshold image bandwidth consumption, or any combination thereof. The first memory device can be similar to the memory device 123, 223, while the second memory device can be similar to the memory device 125, 225 shown herein in Figure 5 and 2 Additionally, the first type of media can be similar to the media type 124, 224, while the second type of media can be similar to the media type 126, 226 shown herein in Figure 5 and 2
[0105] In some embodiments, the method 650 can include reallocating computing resources between the first memory device and the second memory device in response to receiving the indication corresponding to the launch of the application. For example, in embodiments in which the indication corresponding to the launch of the application is an application launch indicator, computing resources can be reallocated between the first memory device and the second memory device to ensure that a sufficient amount of computing resources that exhibit a particular characteristic (e.g., fastest memory access time between memory devices, highest bandwidth between memory devices, etc.) are available to store and process images to be captured by the imaging device.
[0106] At block 653, the method 650 can include receiving, by the processor, data captured by an imaging device coupled to the processor. In some embodiments, the data can include one or more images and / or videos of blood flowing in a blood vessel (e.g., blood cells 544, 546 flowing in the blood vessel 542 shown in FIGS. 5A-5B herein). That is, in some embodiments, the method 650 can include determining, by the processor, that the application corresponds to execution of an operation to detect an abnormality in at least a portion of a human body (e.g., the medical self-diagnostic test subject 540 shown in FIGS. 5A-5B herein), and based at least in part on determining that the execution of the application corresponds to execution of the operation to detect the abnormality in the at least a portion of the human body, writing the data captured by the imaging device to the first memory device or the second memory device. Figure 1 Figure 5 5
[0107] At block 655, the method 650 can include determining, by the processor, a characteristic of a workload corresponding to execution of the application to process the data captured by the imaging device for the first memory device and the second memory device. The characteristic of the workload can include an amount of computing resources consumed when executing the workload, an amount of processing time involved when executing the workload, or an amount of power consumed when executing the workload, etc.
[0108] At block 657, the method 650 can include writing the data captured by the imaging device to the first memory device or the second memory device based on the determined characteristics for the first memory device and the second memory device when executing the workload. In some embodiments, the characteristics of the first memory device and the second memory device can be determined prior to or during execution of the application. As described above, the determined characteristics of the first memory device and the second memory device can include bandwidth, memory access time, latency, memory cell density, or any combination thereof of the first memory device and the second memory device.
[0109] At block 659, the method 650 can include executing, by the processor, the workload as part of execution of the application when the data captured by the imaging device is written to the first memory device or the second memory device that exhibits a greater set of determined characteristics than a threshold. In some embodiments, the operations of the method 650 (e.g., operations 651, 653, 655, 657, and / or 659) can be performed in the absence of a control signal generated externally to the mobile computing device. Thus, in some embodiments, blood abnormalities can be detected and analyzed entirely within the mobile computing device without the need to transfer data or processing responsibilities to circuitry external to the mobile computing device.
[0110] As described above, the method 650 can include transmitting results corresponding to execution of the application to detect abnormalities in at least a portion of a human body to a hospital, a doctor’s office, or an emergency provider, or any combination thereof. This can allow a doctor or other medical professional to maintain a record of a medical self-check performed in accordance with embodiments of the disclosure and / or can provide data to a medical professional for further analysis.
[0111] In some embodiments, the method 650 can include determining, by the processor, that the data captured by the imaging device corresponds to execution of an operation to detect abnormalities in at least a portion of a human body. The operation to detect body abnormalities can be performed as part of a self-diagnostic medical test. In such embodiments, the method 650 can further include writing, based at least in part on determining that the workload or the data captured by the imaging device, or both, corresponds to execution of the operation to detect abnormalities in at least a portion of a human body, data associated with the workload and at least a portion of the data captured by the imaging device to the other of the first memory device or the second memory device.
[0112] In such embodiments, the method 650 can further include executing, by the processor, the operation to process the image or video stream by swapping at least one pixel in the image or video stream, correcting a blurred portion of the image or video stream, and / or removing noise in the image or video stream.
[0113] As described above, the first memory device or the second memory device can be a non-persistent memory device, and the other of the first memory device or the second memory device can be a persistent memory device. In some embodiments, the processor, the first memory device, and the second memory device can reside in a mobile computing device (e.g., the mobile computing device 100 described herein in connection with FIG. 1) that is configured to perform a self-diagnostic medical test. The method 650 can be performed by the mobile computing device 501 shown in FIG. 1. In such embodiments, the method 650 can include determining, writing, and causing by the processor in the absence of a control signal generated external to the mobile computing device. Embodiments are not so limited, and in some embodiments, the method 650 can include writing at least a portion of the data associated with the workload to the other of the first memory device or the second memory device as part of an operation to optimize battery consumption of the mobile computing device.
[0114] While specific embodiments have been shown and described in the present disclosure, it will be clear to those of ordinary skill in the art that lew arrangements can be constructed to achieve the same results. This disclosure is intended to cover any and all modifications and variations from the example embodiments. It is to be understood that the above description is illustrative only and not restrictive. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of ordinary skill in the art upon reviewing the above description. The scope of the one or more embodiments of the present disclosure shall be determined by the following claims, and the full scope of equivalents for which such claims are entitled. The one or more embodiments of the present disclosure are not limited to the exact details shown and described.
[0115] In the foregoing detailed description, some features were grouped together in a single embodiment for the purpose of streamlining the disclosure. This disclosure is not to be interpreted as reflecting an intention that the disclosed embodiments require more features than are explicitly recited in each claim. Rather, as the following claims reflect, inventive subject matter can lie in fewer than all features of a single disclosed embodiment. Thus, the following claims are hereby incorporated into the detailed description, where each claim stands on its own as a separate embodiment.
Claims
1. A method (650) for blood flow imaging, comprising: Processors (122, 222) coupled to a first memory device (123, 223) including a first type of media (124, 224) and a second memory device (125, 225) including a second type of media (126, 226) receive an instruction corresponding to the launch of an application. In response to receiving the instruction corresponding to the launch of the application, computing resources are reallocated between the first memory device (123, 223) and the second memory device (125, 225); The processor (122, 222) receives data captured by the imaging device (121, 521) coupled to the processor (122, 222); The processor (122, 222) determines, for the first memory device (123, 223) and the second memory device (125, 225), the characteristics of the workload corresponding to the execution of the application program used to process the data captured by the imaging device (121, 521); Based on the characteristics determined for the first memory device (123, 223) and the second memory device (125, 225) when performing the workload, the data captured by the imaging device (121, 521) is written to the first memory device (123, 223) or the second memory device (125, 225). as well as When the data captured by the imaging device (121, 521) is written to the first memory device (123, 223) or the second memory device (125, 225) that exhibits a threshold set greater than the determined characteristics when executing the workload, the workload is executed by the processor (122, 222) as part of the execution of the application.
2. The method of claim 1, wherein the data captured by the imaging device comprises one or more images of blood (544, 546) flowing in the blood vessel (542), and wherein the data is captured by the imaging device when the imaging device is outside the blood vessel (542).
3. The method according to claim 1, further comprising: The processor determines that the application corresponds to the execution of an operation for detecting abnormalities in at least a portion of the human body (540); The data captured by the imaging device is written to the first memory device or the second memory device, based at least in part on the determination that the execution of the application corresponds to the execution of the operation for detecting the abnormality in at least the portion of the human body (540). as well as The results corresponding to the execution of the application used to detect the abnormalities in at least the said parts of the human body will be transmitted to a hospital, doctor's office, or emergency provider, or any combination thereof.
4. The method according to any one of claims 1 to 3, wherein the processor, the first memory device and the second memory device reside on the mobile computing device (501), and wherein the method includes being received, determined, written and executed by the processor in the absence of control signals generated outside the mobile computing device (501).
5. The method according to any one of claims 1 to 3, further comprising determining characteristics of the first memory device and the second memory device before or during the execution of the application, wherein the determined characteristics of the first memory device and the second memory device include bandwidth, memory access time, latency, or memory cell density of the first memory device and the second memory device, or any combination thereof.
6. The method according to any one of claims 1 to 3, wherein the indicator corresponding to the launch of the application includes an indication that the execution of the application will involve processing an image larger than a threshold image size, a resolution higher than a threshold resolution, or a bandwidth consumption higher than a threshold image bandwidth consumption, or any combination thereof.
7. An apparatus for blood flow imaging, comprising: A first memory device (123, 223) includes a first type of media (124, 224); The second memory device (125, 225) includes a second type of media (126, 226); Imaging devices (121, 521); as well as Processors (122, 222) coupled to the first memory device (123, 223), the second memory device (125, 225), and the imaging device (121, 521), wherein the processors (122, 222) will: Receive the application launch indicator; In response to receiving the application launch indicator, computing resources are reallocated between the first memory device (123, 223) and the second memory device (125, 225) based at least in part on determined characteristics of the first memory device (123, 223) and the second memory device (125, 225); Receive data captured by the imaging device (121, 521); Based on the determined characteristics of the first memory device (123, 223) and the second memory device (125, 225), the data captured by the imaging device (121, 521) is written to the first memory device (123, 223) or the second memory device (125, 225). The application program is executed when the data captured by the imaging device (121, 521) is written to the first memory device (123, 223) or the second memory device (125, 225).
8. The device of claim 7, wherein the application launch indicator includes signaling indicating the execution of an operation to process an image, the image being larger than a threshold image size, having a resolution higher than a threshold resolution, or having bandwidth consumption higher than a threshold image bandwidth consumption, or any combination thereof.
9. The device of claim 7, wherein the processor will: Receive image sequences as part of receiving the data captured by the imaging device; and The image sequence is processed to swap at least one pixel of at least one image in the image sequence, correct blurry portions of the at least one image in the image sequence, or remove noise from the at least one image in the image sequence, or any combination thereof.
10. The device according to claim 7, wherein: The processor will determine the characteristics of the first memory device and the second memory device before or during the execution of the application, and The determined characteristics of the first memory device and the second memory device include the bandwidth, memory access time, latency, memory cell density, or any combination thereof of the first memory device and the second memory device.
11. The device according to any one of claims 7 to 10, wherein the processor, the imaging device, the first memory device, and the second memory device reside on a mobile computing device (501), and wherein the processor will: Images of blood flow (544, 546) in blood vessels (542) are received as part of the data captured by the imaging device; and The application is executed to determine whether any abnormalities are detected in the received images of the blood flow (544, 546).
12. The device according to any one of claims 7 to 10, wherein the processor, the imaging device, the first memory device, and the second memory device reside on a mobile computing device (501), and wherein the processor executes one or more sets of machine learning instructions to perform the following operations: The application launch indicator is determined to correspond to the execution of an application used to process data captured by the imaging device that exceeds a pixel threshold number, or Determine the characteristics of the first memory device and the second memory device, or both.
13. The device according to any one of claims 7 to 10, wherein: The processor, the imaging device, the first memory device, and the second memory device reside on the mobile computing device (501). The first memory device or the second memory device is a NAND flash memory device (333, 433), which includes a set of single-level memory cells (SLC) (335, 435) and a set of multi-level memory cells (MLC) (337, 437). The group of single-level memory cells (SLCs) (335, 435) are configured to store lookup tables to facilitate the writing of at least said portion of the data to another of the first memory device or the second memory device, and The processor will write at least a portion of the data captured by the imaging device to the group of single-level memory cells (SLCs) (335, 435) or the group of multi-level memory cells (MLCs) (337, 437) based at least in part on receiving the application launch indicator.
14. A system for blood flow imaging, comprising: A memory system (104, 204, 504) includes a processor (122, 222), a first memory device (123, 223) including a first type of media (124, 224), a second memory device (125, 225) including a second type of media (126, 226), and a third memory device (227) including a third type of media (228); as well as Imaging devices (121, 521), coupled to the memory devices (104, 204, 504), wherein the processors (122, 222) will: Receive one or more images captured by the imaging device (121, 521); Based on the characteristics of one or more received images, an application launch indicator is generated corresponding to the execution of an application that detects anomalies in at least a portion of a living organism. In response to generating the application launch indicator, computing resources are reallocated among the first memory device (123, 223), the second memory device (125, 225), or the third memory device (227), or any combination thereof, based at least in part on the characteristics of the first memory device (123, 223), the second memory device (125, 225), and the third memory device (227). In response to generating the application launch indicator, at least a portion of the one or more images captured by the imaging device (121, 521) is written to the first memory device (123, 223), the second memory device (125, 225), or the third memory device (227) or a combination thereof. as well as When the one or more images captured by the imaging device (121, 521) are written to the first memory device (123, 223), the second memory device (125, 225), or the third memory device (227) or any combination thereof, the application corresponding to detecting the abnormality in at least the portion of the organism is executed.
15. The system according to claim 14, wherein: The first type of media includes a memory cell array, which comprises at least one capacitor and at least one transistor. The second type of medium includes a floating-gate metal-oxide-semiconductor field-effect transistor array, and The third type of media includes an array of variable resistance memory cells configured to perform bit storage based on changes in the volume resistance associated with the variable resistance memory cell.
16. The system of claim 14, wherein the memory system and the imaging device reside on a mobile computing device (501), and wherein the processor transmits the results corresponding to the execution of the application for detecting the abnormality in at least the portion of the organism to a hospital, doctor's office, or emergency provider, or any combination thereof.
17. The system of claim 14, wherein the memory system and the imaging device reside on a further mobile computing device (501) including a display screen, and wherein the processor will: Dietary recommendations are generated based at least in part on the results of the execution of the application used to detect the abnormalities in at least said portions of the organism; and The dietary recommendations are displayed on the screen.
18. The system according to any one of claims 14 to 17, wherein: The processor, the imaging device, the first memory device, and the second memory device reside on the mobile computing device (501), and The processor will execute one or more sets of machine learning instructions to perform the following operations: The characteristics of the first memory device, the second memory device, and the third memory device are determined at least in part based on benchmark data monitored and associated with the first memory device, the second memory device, and the third memory device; as well as The computing resources are reallocated among the first memory device, the second memory device, or the third memory device, or any combination thereof, based at least in part on the determined characteristics of the first memory device, the second memory device, and the third memory device.
19. The system according to any one of claims 14 to 17, wherein: The processor, the imaging device, the first memory device, and the second memory device reside on the mobile computing device (501), and The processor will execute one or more sets of machine learning instructions to perform the following operations: The characteristics of the one or more received images are determined based on images previously captured by the imaging device; as well as The application launch indicator is generated based on the determined characteristics of the one or more images.
20. The system according to any one of claims 14 to 17, wherein at least a portion of the data corresponding to the one or more images captured by the imaging device is written to the first memory device, the second memory device, or the third memory device according to a general data format or a POSIT format.
Citation Information
Patent Citations
Specifying media type in write commands
CN112041805A
Selectively operable memory device
CN112908384A