Ultrasonic echo signal processing method, ultrasonic sensor chip and system
By extracting and storing the marker information of ultrasonic echo signals, the bandwidth problem of traditional ultrasonic sensor data transmission is solved, achieving efficient and accurate obstacle detection.
Patent Information
- Application Number
- CN202510201538.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-08-08
- Filing Date
- 2025-02-21
- Publication Date
- 2026-02-10
AI Technical Summary
In technologies such as autonomous driving and driverless driving, existing ultrasonic sensors can no longer meet the requirements by only transmitting obstacle data, and transmitting complete echo data will consume a lot of communication bandwidth and host computer resources.
The marker information, including time and intensity information, is extracted from the ultrasonic echo signal and linked together through a memory module. The information is then transmitted to the host processing circuit according to specified rules for obstacle detection.
It improves the accuracy and real-time performance of obstacle detection, reduces data transmission volume, and minimizes bandwidth usage, thus meeting the high-efficiency data processing needs of modern autonomous driving and intelligent transportation systems.
Smart Images

Figure CN121500291A_ABST
Abstract
Description
[0001] This application claims priority to Chinese Patent Application No. 202411087657.6, filed with the State Intellectual Property Office of China on August 8, 2024, entitled "Method for Processing Marker Points of Ultrasonic Sensor Chip and Ultrasonic Sensor Chip", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of ultrasonic detection technology, specifically to an ultrasonic echo signal processing method, an ultrasonic sensor chip, and a system. Background Technology
[0003] Ultrasonic sensor technology has been applied in many fields, and its high stability and low cost have led to its widespread use and research.
[0004] To improve distance measurement, ultrasonic sensors are typically installed in vehicles. An ultrasonic sensor consists of an ultrasonic transmitter and an ultrasonic receiver. These can be integrated into a single ultrasonic transducer, or they can be separate devices. When the emitted ultrasonic signal is reflected by an obstacle or object near the vehicle, the echo signal can be detected in the received signal. If an echo exceeding a threshold is detected during the reception phase, this echo is considered an obstacle echo and can be used to determine the obstacle's distance. The distance between obstacles can be calculated using the time difference between the emitted and received echo signals. However, with the development of technologies and applications such as autonomous driving, driverless driving, assisted driving, and automatic parking, simply uploading data on the presence or absence of obstacles is no longer sufficient. More data about the echo signals, such as obstacle type, obstacle distribution, and obstacle height, needs to be transmitted to a host computer.
[0005] However, echo data contains a large amount of data. If all the data is transmitted to the computer system, problems such as long transmission time and large bus bandwidth consumption will arise. Transmitting complete curve data (all sampling points) will consume a large amount of communication bandwidth, and the requirements for the host computer's memory and computing power will also be higher. Therefore, a method and system are needed that can transmit more useful information to the computer system while minimizing the transmission of excessive data. Summary of the Invention
[0006] In view of this, this application provides an ultrasonic echo signal processing method, an ultrasonic sensor chip, and a system to solve the problem of being able to transmit more useful data to the host processing circuit while not transmitting too much data.
[0007] In a first aspect, some embodiments of this application provide an ultrasonic echo signal processing method, which extracts marker points from ultrasonic echo signals. The marker points carry marker point information, which includes time information for characterizing the timing of the marker point's appearance and intensity information for characterizing the strength of the marker point.
[0008] The marker information is stored in the memory module;
[0009] Each type of marker is linked through its address;
[0010] Receive the read command and transmit the required marker information to the host processing circuit according to the link relationship;
[0011] The host processing circuit determines obstacles based on the marker information.
[0012] In one possible implementation of the first aspect, storing the marker information in a memory module includes:
[0013] If the current marker is not the first marker, then while storing the information of the current marker, the address information of the address where the previous marker is located will also be stored.
[0014] In one possible implementation of the first aspect, storing the marker information in a memory module includes:
[0015] The marker information is stored in the memory module in chronological order.
[0016] In one possible implementation of the first aspect, transmitting the required marker information to the host processing circuit according to the link relationship includes:
[0017] The required marker information is transmitted to the host processing circuit in reverse order according to the link relationship.
[0018] In one possible implementation of the first aspect, the memory module includes:
[0019] The memory module is provided with a dedicated storage area, which is used to store the address of the last marker information of each type of marker.
[0020] When a read command is received, the address data of the dedicated storage area is read first, and then the information of each type of marker point is read in reverse order.
[0021] In one possible implementation of the first aspect, the marker information includes:
[0022] When a certain type of marker information appears for the first time, the starting identifier of that type of marker will be stored before the marker information is stored.
[0023] In one possible implementation of the first aspect, the starting identifier of the type of marker point includes:
[0024] When reading a certain type of marker information in reverse order, the start identifier is the end identifier when the reading of that type of marker information is completed.
[0025] In one possible implementation of the first aspect, receiving the read instruction includes:
[0026] After receiving a read command, the data that the host processing circuit has read is marked until all data has been read.
[0027] In one possible implementation of the first aspect, the memory module includes a memory control module, which further includes a command parsing module to parse different read commands and extract the marker information corresponding to the different read commands.
[0028] Secondly, embodiments of this application provide an ultrasonic sensor chip capable of implementing the above-mentioned ultrasonic echo signal processing method. It is used to electrically connect with an ultrasonic sensor, drive the ultrasonic sensor to emit ultrasonic signals, and receive ultrasonic signals to form ultrasonic echo signals.
[0029] Thirdly, this application provides an ultrasonic sensor system, including a host computer and an ultrasonic sensor chip. The host computer is used to send reading instructions to the ultrasonic sensor and to determine obstacles based on the marker information sent by the ultrasonic sensor chip.
[0030] Using the solution provided in this application embodiment, the ultrasonic sensor chip can effectively extract marker information from the ultrasonic echo signal and store it in the memory module. By storing the time and intensity information of the marker information, the ultrasonic sensor chip can form a link relationship between the markers. Upon receiving a read command, it transmits the required marker information to the upper-level processing circuit in reverse order according to the link relationship. In this way, the upper-level processing circuit can determine obstacles based on the marker information, thereby improving the accuracy and real-time performance of obstacle detection. Furthermore, in this application embodiment, the ultrasonic sensor chip can effectively reduce the amount of data transmitted when storing marker information, reducing bandwidth usage and improving data transmission efficiency, thus meeting the needs of modern autonomous driving and intelligent transportation systems for efficient and accurate data processing. Attached Figure Description
[0031] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0032] Figure 1 A schematic diagram of an echo data curve for ultrasonic ranging provided in an embodiment of this application;
[0033] Figure 2 A schematic diagram of another echo data curve for ultrasonic ranging provided in an embodiment of this application;
[0034] Figure 3 This is a schematic diagram illustrating a method for storing marker points according to an embodiment of this application;
[0035] Figure 4 This is a schematic diagram illustrating another method for storing marker points provided in an embodiment of this application;
[0036] Figure 5 This is a schematic diagram illustrating another method for storing marker points provided in an embodiment of this application;
[0037] Figure 6 This is a schematic diagram illustrating another method for storing marker points provided in an embodiment of this application;
[0038] Figure 7 To Figure 2 A schematic diagram of a possible storage method for extracting marker points;
[0039] Figure 8 A flowchart of data reading steps provided in this application embodiment;
[0040] Figure 9 This is a schematic diagram illustrating another method for storing markers provided in an embodiment of this application. Detailed Implementation
[0041] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application.
[0042] It should be understood that the described embodiments are merely some, not all, of the embodiments in this application. All other embodiments obtained by those skilled in the art based on the embodiments in this application without inventive effort are within the scope of protection of this application.
[0043] In the description of this application, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, "multiple" means two or more, unless otherwise explicitly specified.
[0044] The terminology used in the embodiments of this application is for the purpose of describing particular embodiments only and is not intended to be limiting of this application. The singular forms “a,” “the,” and “the” used in the embodiments of this application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise.
[0045] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.
[0046] To improve distance measurement, vehicles are typically equipped with ultrasonic sensors. When the emitted ultrasonic signal is reflected by an obstacle or object near the vehicle, the echo signal can be detected in the received signal. The distance between the obstacle can then be calculated using the time difference between the emitted and received ultrasonic signals. Figure 1 This is a possible schematic diagram of the echo data curve from ultrasonic ranging. The horizontal axis represents time or a parameter converted to distance, and the vertical axis represents the intensity or height of the ultrasonic echo. Figure 1In this sequence, segment S1 generally represents the driving phase of the ultrasonic sensor (this is the transmission time of the driving or excitation signal, used to drive the ultrasonic transducer); segment S2 represents the aftershock phase (this is the aftershock signal, the oscillation signal generated when the ultrasonic transducer cannot stop immediately); and segment S3 represents the receiving phase (this is the echo signal, used for ranging to determine the presence or type of obstacle). During the driving phase, the ultrasonic transducer is still being driven; obstacle echoes at this stage have not yet returned to the receiving ultrasonic transducer, or even if they do, they are submerged in the driving signal. Therefore, the presence or absence of an obstacle cannot be determined during this phase. During the aftershock phase, due to the characteristics of the ultrasonic transducer, it cannot stop immediately after the driving phase ends and needs to oscillate for a period of time. This oscillation is initially very strong, then gradually decreases. Generally, only after it decreases to a certain level can the subsequent signal be used to determine the presence of obstacle echoes. During the aftershock phase, there are many ways to reduce the intensity of the oscillation. The oscillation time of aftershocks, along with methods to determine the presence of obstacles during the aftershock phase, varies depending on the specific circuit design and processing method. This application does not impose limitations here, but only uses a conventional approach for ease of understanding. During the receiving phase, since the aftershocks have decreased to a certain level, if a signal higher than a threshold is received, it is generally considered an obstacle echo, thus determining the distance to the obstacle. However, in reality, not all signals above the threshold are considered obstacle echoes; there could be signal interference, jitter, etc. If the width exceeding the threshold is too narrow, it may be filtered out or not considered an obstacle echo. This depends on the specific processing method, and this application does not impose limitations here, but only uses a conventional approach for ease of understanding. Furthermore, the thresholds shown in the accompanying drawings are basically consistent, but in reality, the threshold value can be constant or dynamically changing over time. This application does not impose limitations here, but only uses a conventional approach (with the threshold always being the same) for ease of understanding. Here, various signals are processed into envelope curves, and the height of the envelope curve represents the signal strength at that time.
[0047] When an echo exceeding a threshold is detected during the receiving phase, it is considered an obstacle echo and can be used to determine the obstacle's distance. However, with the widespread adoption of technologies and applications such as autonomous driving, driverless driving, assisted driving, and automatic parking, simply knowing whether an obstacle exists is no longer sufficient. More comprehensive data is needed for obstacle detection, such as obstacle type, distribution, and height. Therefore, ultrasonic transducer chips cannot be limited to transmitting obstacle presence / absence data to the computer system or host processing circuit; they also need to transmit more information to the host computer to meet increasingly sophisticated functional requirements.
[0048] However, echo data contains a large amount of data. If all the data is transmitted to the computer system, problems such as long transmission time and large bus bandwidth consumption will arise. Transmitting complete curve data (all sampling points) will consume a large amount of communication bandwidth, and the requirements for the host computer's memory and computing power will also be higher. Therefore, a method and system are needed that can transmit more useful information to the computer system while minimizing the transmission of excessive data.
[0049] Because the echo data contains a lot of noise, and as mentioned earlier, the drive signal in the drive phase cannot be used for obstacle detection, and at least some of the aftershock signal in the aftershock phase cannot be used for obstacle detection, some data can be discarded to reduce the amount of data transmitted.
[0050] like Figure 2 The diagram shown is a possible schematic of the echo data curve for ultrasonic ranging in this application. The marker points extracted from the data curve include, but are not limited to, the following: points crossing the threshold (markers 1, 6, and 9), which are the points where the echo data curve intersects the threshold curve from high to low, forming the set of crossing point curves; points crossing the threshold (markers 2 and 7), which are the points where the echo data curve intersects the threshold curve from low to high, forming the set of crossing point curves; maximum values (markers 3, 5, and 8), which are the maximum points on the echo data curve after it exceeds the threshold, forming the set of maximum value curves; minimum values (marker 4), which are the minimum points on the echo data curve after it exceeds the threshold, forming the set of minimum value curves; Additionally, crossing and lowering the threshold can be disregarded, as both are points equal to the threshold, and therefore, the marker points (markers 1, 2, 6, 7, and 9) can be considered as threshold points. Points below the threshold are essentially noise or interference and have no real effect on obstacle detection. Points above the threshold curve can be identified by selecting some marker points to reconstruct the curve's trend. Therefore, selecting representative marker points to transmit to the computer system can greatly reduce the amount of data transmitted without affecting the computer system's ability to process more functions using the echo data curve.
[0051] The marker point must contain at least the following information (the first data, the second data, ... the xth data mentioned below refer to the data information carried by the marker point that represents the characteristics of the ultrasonic echo): the time parameter used to characterize the appearance of the marker point, and the data intensity of the marker point.
[0052] In one embodiment, the ultrasonic signal processing method of this application includes processing the ultrasonic echo signal, extracting marker points from the ultrasonic echo signal, wherein the marker points include time information characterizing the timing of the marker point's appearance and intensity information characterizing the strength of the marker point, and storing this marker point information according to specified rules, with each type of marker point forming a link relationship through addresses; receiving a read instruction, and transmitting one or more types of marker point information to a host computer according to the link relationship, wherein the host computer determines obstacles based on the marker point information. The marker points can be one or more of the following: underpass threshold points, overpass threshold points, maximum and minimum values, or the marker points can be one or more of the following: threshold points, maximum and minimum values.
[0053] It should be noted that the threshold crossing point, threshold crossing point, threshold point, maximum value, and minimum value can be determined as defined above, or they can be values near these points. For example, the threshold crossing point is not necessarily the point where the echo data curve intersects the threshold curve from high to low (i.e., the point of equality); there can be some deviation before or after it. Similarly, the threshold crossing point is not necessarily the point where the echo data curve intersects the threshold curve from low to high (i.e., the point of equality); there can be some deviation before or after it. Likewise, the threshold point is not necessarily the intersection point of the echo data curve and the threshold curve (i.e., the point of equality); there can be some deviation before or after it. Similarly, the maximum value is not necessarily the maximum point of the echo data curve after it exceeds the threshold; there can be some deviation before or after it. The minimum value is not necessarily the minimum point of the echo data curve after it exceeds the threshold; there can be some deviation before or after it. This depends on design requirements and sampling rate, among other factors. Therefore, the threshold crossing point, threshold crossing point, threshold point, maximum value, minimum value, and points near these points are all within the scope of protection of this application.
[0054] Furthermore, the marker points can be other types of marker points or include other marker points, such as the intermediate intensity point between the threshold point and the highest value, the intermediate intensity point between the highest and lowest values, the intermediate intensity point between the minimum and maximum values, or the intermediate intensity point between the maximum value and the threshold point. They do not necessarily have to be intermediate intensities; they can be intensity points of any proportion. The selection criterion for marker points is that they can characterize the contour and features of the echo data curve; they are not required to be of a specific type. However, this application preferentially uses the threshold point, the threshold point, the maximum and minimum values, or the threshold point, the maximum and minimum values. Such marker points do not require further conversion, simplifying data processing.
[0055] Figure 3This is a schematic diagram of marker point data storage. The ultrasonic sensor chip needs to process at least one type of marker point, and may also process two, three, or more types. For the sake of clarity and simplicity, this illustration is intended to simplify the explanation of this application. Figure 3 Only three types of marker points are shown in the text.
[0056] like Figure 3 As shown, the ultrasonic sensor chip includes a memory control module and a memory module. The ultrasonic sensor chip also includes a signal processing circuit (not shown in the figure, such as a DSP). The signal processing circuit processes the echo signal and extracts the marker information. The memory control module processes and stores the marker information. The memory control module is also used to receive read commands from the host computer and transmit the marker information in the memory module to the host computer. Figure 3 The physical addresses of the memory modules shown are for illustrative purposes only and do not represent the data to be stored in that column. In the attached diagram, the controller storage module's storage of data and reception of read commands can be implemented either through the main control circuit of the ultrasonic sensor chip or by the memory controller module itself; no restriction is imposed here.
[0057] In one embodiment, the marker information is preferably stored in the memory module in chronological order, making subsequent obstacle detection more intuitive and efficient. The signal processing circuit processes the echo data and extracts the marker information. In chronological order, if a first-type marker appears first, the start identifier of the first-type data and the first data of the first-type marker are stored at address addr0. If a third-type marker appears next, the start identifier of the third-type data and the first data of the third-type marker are stored at address addr1. If another first-type marker appears next, the second data of the first-type marker is stored at address addr2. Since first-type data has already appeared, the storage of the second data of the first-type marker is also performed simultaneously. The system stores the address of the first data of the first type of marker, i.e., add0. When a second type of marker appears, the starting identifier of the second type of data and the first data of the second type of marker are stored at address addr3. When another type of marker appears, the third data of the first type of marker is stored at address addr4. Since type 1 data has already appeared, the storage address of the second data of the previous type 1 marker is also stored when storing the second data of the first type of marker, i.e., addr2, and so on, storing all the marker data to be processed within one cycle. The storage rule is that when a type of marker appears for the first time, the starting identifier and the marker data of that type of data are stored, which helps in the management and processing of subsequent marker information. When a marker of a certain type is not appearing for the first time, the address of the data storage of the previous marker of that type and the marker information of the current marker are stored, thus forming a chain of marker information of a certain type. When it is necessary to read the information of a certain type of marker, it can be associated through the address, which facilitates the reading of data.
[0058] When all the marker data stored in the memory module needs to be transmitted to the host computer (see the first configuration method below), the reading rules of the memory control module can be set in advance, such as reading the third type of data first, then reading the second type of data, and finally reading the first type of data. The host computer also knows this data transmission rule, and receives the third type of data first, then the second type of data, and finally the first type of data. In this way, the amount of data transmitted is greatly reduced, while the host computer can accurately identify what type of marker the data sent is, so as to make obstacle judgment.
[0059] When the ultrasonic sensor chip receives a read command from the host computer, it transmits the marker information from its memory module to the host computer. Once all the information is transmitted, the host computer determines the type of marker based on the starting identifier and the address links between the data, thus enabling obstacle detection. The reading order can be either forward or reverse.
[0060] To further reduce the amount of data transmitted, a start identifier can be omitted, and reading can proceed according to a specified rule. For example, in the above scenario, the reading rule is to read the third type of data first, then the second type, and finally the first type. First, find the start identifier for the third type of data. Then, find the memory address that stores the start identifier for the third type. For example, if the memory address for both the start identifier and the first data is addr1, then find the memory that stores this address. If it's found that the data stored at address addr5 contains the data at address addr1, then the data for the third type of marker stored at addr5 is the second data. This process continues until all information for the third type of marker is found and transmitted to the host computer. Then, the second and first type of markers are transmitted. After each type of marker information is transmitted, an end identifier can be used to indicate that the transmission of that type of marker information is complete, and the next transmission will be for a different type of marker information. Based on the data transmission rules, the host computer can determine the type of data being transmitted and thus perform obstacle detection. Alternatively, the reading can be performed in reverse order. Since the address information of the previous marker is also stored when the subsequent marker information is stored, the reading order is as follows: addr11->addr7->addr5->addr1. It is found that the address addr1 stores the start identifier of the third type of marker, indicating the end of the third type of marker information. Of course, it can also be done as follows... Figure 4 As shown, when no address information is stored in address addr1, it indicates the end of the third type of marker information. All information of the third type of markers is then transmitted to the host computer, thus ending the reading of the third type of information. This is followed by the second type of markers and then the first type of markers. In this method, only the marker information needs to be transmitted, without transmitting the start identifier and address information; of course, both types of information can also be transmitted.
[0061] It should be noted that when transmitting a certain type of data, it can be transmitted in segments or all at once; this application does not impose any restrictions.
[0062] By extracting and storing the uploaded marker information and retrieving it, more information can be transmitted to the host computer, while at the same time greatly reducing the amount of data transmitted.
[0063] To further reduce the amount of data, if data is read according to specified rules, and one type of marker information is read before another type of marker information is read, then there is no need to transmit the start identifier or the address information. As mentioned above, in the second method, when reading according to specified rules, it is only necessary to read one type of data to the host computer according to the address link relationship. The host computer can then know what type of marker the data is and thus make obstacle judgments.
[0064] In one embodiment, the address where the data information of the last marker point is located can also be stored, making it faster and more convenient to find the end of a type of marker point information. For example... Figure 5 As shown, when all the data for one type of marker point is stored, an identifier for that type of marker point data will be set, and the identifier and the storage address of the last marker point data of that type will also be stored. Figure 5 As shown, the last data of type 1 markers is stored in addr10, so the memory module stores the type 1 data identifier and the address of addr10; the last data of type 2 markers is stored in addr9, so the memory module stores the type 2 data identifier and the address of addr9; the last data of type 3 markers is stored in addr11, so the memory module stores the type 3 data identifier and the address of addr11. When reading marker information in forward order, when the identifier of a certain type of data is read, it means that all marker information of that type has been read, and the reading operation for that type of information can be ended. When reading marker information in reverse order, when the identifier of a certain type of data is found, the address where the last information of that type of marker is located is found, and the reading proceeds backward until all marker information of that type has been read. Setting the data identifier of the markers and the storage address of the last marker information allows for faster finding of the start or end point of the data to be read without traversing all memory. This eliminates the need for a separate designated area in the memory module to store marker information, making the memory module more flexible and allowing storage in any location.
[0065] In another embodiment, a dedicated storage area is provided in the memory module to store the address of the data information of the last marker point. This dedicated storage area reduces read time and improves the overall efficiency of the system. Figure 6As shown, physical addresses Addrx1, Addrx2, and Addrx3 are dedicated address bits. The memory space corresponding to physical address Addrx1 is dedicated to storing the address of the last data of the first type of marker, the memory space corresponding to physical address Addrx2 is dedicated to storing the address of the last data of the second type of marker, and the memory space corresponding to physical address Addrx3 is dedicated to storing the address of the last data of the third type of marker. When reading information of a certain type of marker, the memory control module first accesses the dedicated address, finds the last marker of that type, and reads them one by one until all markers of that type have been read. This has the advantage of... Figure 5 This method saves more space in the memory module and is more convenient and faster. When accessing data, it doesn't require traversing or partially traversing a portion of the memory space; it only needs to access a designated dedicated storage area to check if data is stored at a dedicated address. If it is, it indicates the existence of that type of marker information; otherwise, it means that this type of marker information was not found during echo data processing. When that type of marker information is found, the address of the last marker information is located, allowing for easy retrieval of all marker information of that type and transmission to the host computer. Of course, Figure 6 The embodiments in the example can also store flag data.
[0066] There are no special provisions regarding whether or where the start identifier and data identifier (or end identifier) of a certain type of data should be stored; they can be freely set according to the reading rules.
[0067] To simplify the explanation and facilitate understanding, we will use the following examples: the underpass threshold point, the overpass threshold point, the maximum value, and the minimum value. The first type of data is the underpass threshold point, the second type of data is the maximum value, the third type of data is the overpass threshold point, and the fourth type of data is the minimum value.
[0068] like Figure 7 As shown, this is for Figure 2 A schematic diagram illustrating a possible storage method for extracting marker points. During echo envelope curve processing, the following data appear sequentially: downward threshold point (Class 1 data), upward threshold point (Class 3 data), maximum value (Class 2 data), minimum value (Class 4 data), maximum value (Class 2 data), downward threshold point (Class 1 data), upward threshold point (Class 3 data), maximum value (Class 2 data), and downward threshold point (Class 1 data). These marker point information are then stored in chronological order. The starting identifier of the data may or may not be stored simultaneously. Each subsequent marker point is stored along with the address information of the previous marker point until all marker point information has been stored. Figure 7In this example, there are four types of markers to be processed. Therefore, there are four dedicated storage areas corresponding to four physical addresses to store the address information of the last marker for each type. For example, physical addresses Addrx1, Addrx2, Addrx3, and Addrx4 are dedicated address bits. The storage space corresponding to physical address Addrx1 is dedicated to storing the address of the last data of the first type of marker, the storage space corresponding to physical address Addrx2 is dedicated to storing the address of the last data of the second type of marker, the storage space corresponding to physical address Addrx3 is dedicated to storing the address of the last data of the third type of marker, and the storage space corresponding to physical address Addrx4 is dedicated to storing the address of the last data of the fourth type of marker. The last marker information of the first type of data is stored in addr8, the last marker information of the second type of data is stored in addr7, the last marker information of the third type of data is stored in addr6, and the last marker information of the fourth type of data is stored in addr3. Therefore, addr8, addr7, addr6, and addr3 are stored in their respective dedicated storage areas.
[0069] When a read command is received from the host computer, data can be read out one category at a time in forward order, or all data can be read out at once, and the type of data can be determined by the start identifier. Reading data one category at a time is preferred, as this eliminates the need to transmit additional information such as address information and start identifiers, effectively reducing data transmission. To simplify the reading logic, data is read in reverse order first. Reverse order transmission ensures that the latest marker information is processed first, improving system response speed. When reading a certain type of marker information in reverse order, the start identifier serves as the end identifier for that type of marker information, effectively marking data boundaries and preventing data confusion. First, the address of the last marker information of the first type of data is found using the address data in the dedicated storage area. Then, the marker information of all the first type of data is transmitted to the host computer according to the address chain relationship. Next, the address of the last marker information of the second type of data is found, and the marker information of the second type of data is transmitted to the host computer according to the address chain relationship. Then, the address of the last marker information of the third type of data is found, and the marker information of the third type of data is transmitted to the host computer according to the address chain relationship. Finally, the address of the last marker information of the fourth type of data is found, and the marker information of the fourth type of data is transmitted to the host computer according to the address chain relationship. In this way, all the marker information is transmitted to the host computer. Only the marker information needs to be carried. There is no need to transmit the start identifier, data identifier (end identifier) or address information. This greatly reduces the amount of data transmitted and improves the data transmission speed. At the same time, more useful information is transmitted to the host computer for obstacle detection.
[0070] In another embodiment, after receiving a read command, the data that the host processing circuit has read is marked until all data has been read. Figure 8 Taking this example, we'll explain the process using reverse reading. To facilitate continuous reading and find the next data category, already read data can be marked. After marking, the following steps can be performed: First, starting from the "Start" node, determine if all data has been read. If all data has been read, the process ends directly; if not, retrieve the last data and check if it has been read. If the data has been read, retrieve the next data; if not, change the current data identifier to "read" and update the "read all" identifier. Then, extract the address information (identified as "addr") from the data and retrieve the corresponding data based on that address. Subsequently, determine if the current data is the starting identifier of the feature data. If not, return to the node where the current data identifier was changed to "read"; if so, check again if all data has been read. If yes, end the process; if no, return to the step of retrieving the last data, until all data has been read, and finally end the process after all conditions are met. The entire process aims to ensure the efficiency and accuracy of data reading.
[0071] In the alternative configuration described below, the read command is parsed to determine which type or types of data the host computer requires, and then the corresponding flag point information is transmitted to the host computer. In this case, the memory control module also has a command parsing module. This module parses the read command sent by the host computer to determine what type of flag point data is needed—whether it's to read all flag point information, one type, or several types. Based on the parsed command, the memory control module reads the corresponding data information from the storage module and transmits it to the host computer, thus meeting more flexible application scenarios.
[0072] by Figure 9 Taking this as an example, there are three types of marker point information that need to be stored. Command A transmits all types of marker point information to the host computer, command B transmits the first type of marker point information to the host computer, command C transmits the second type of marker point information to the host computer, command D transmits the third type of marker point information to the host computer, and so on. There are also corresponding commands for combinations of various types of marker point information. The number of commands or reading methods allowed can be freely set according to actual needs, and this application does not limit them.
[0073] When the command parsing module receives command A, it transmits all types of marker point information stored in the memory module to the host computer. The reading and transmission methods have been described above and will not be repeated here. When the command parsing module receives command D, it transmits the third type of marker point information to the host computer. The reading and transmission methods have been described above and will not be repeated here.
[0074] In addition, to be more flexible in adapting to more applications or to further reduce data transmission volume, ultrasonic sensor chips are configurable, and the configuration methods can be varied.
[0075] One configuration method is as follows:
[0076] The host computer configures the ultrasonic sensor chip according to different application requirements, specifying which type or type of marker point information is needed. The ultrasonic sensor chip then extracts only that type of sensor information. The advantage of this is that the ultrasonic sensor chip does not need to extract and store all marker point information, reducing processing load and memory usage. Moreover, receiving marker point reading commands is relatively simple. Once a reading command is received, the extracted marker point information is transmitted to the host computer without needing to determine what type of marker point information the reading command is reading, thus simplifying the entire data processing flow.
[0077] Another configuration method is:
[0078] The ultrasonic sensor chip extracts and stores all types of marker point information. When it receives a command from the host computer to read all marker points, it transmits all marker point information to the host computer; when it receives a command from the host computer to read a specific type of marker point, it transmits that marker point information to the host computer; when it receives a command from the host computer to read several types of marker points, it transmits those types of marker point information to the host computer, and so on. Therefore, the ultrasonic sensor chip processes all marker point information and transmits the corresponding marker point information according to the actual needs of the host computer, thus adapting to different application requirements of the host computer. This makes it more flexible to use, and sending the corresponding marker point information according to specific application requirements can effectively adjust the bandwidth usage. When only one or several types of marker point information are needed, it can also effectively reduce the amount of data transmission.
[0079] Therefore, the host computer can issue different reading commands, which are used to read the specified marker point information in the ultrasonic sensor chip; the ultrasonic sensor chip receives different reading commands and transmits the corresponding marker point information to the host computer.
[0080] In another embodiment, the host computer can send different configuration information, which represents different types of marker points required by the host computer; the ultrasonic sensor chip receives the configuration information and extracts the marker point information according to the configuration information; when it receives a read command from the host computer, it transmits the processed marker point information to the host computer.
[0081] In one embodiment, when transmitting information about the marker points, in addition to the time information and intensity information described above, other information used to determine the characteristics of the ultrasonic echo can also be used.
[0082] This application also proposes an ultrasonic sensor chip, including the method mentioned in the above-described invention, for electrically connecting with an ultrasonic sensor, driving the ultrasonic sensor to emit ultrasonic signals, and receiving ultrasonic signals to form ultrasonic echo signals.
[0083] This application also proposes an ultrasonic sensing system, including the host processing circuit (host computer) mentioned in the above-described invention and an ultrasonic sensor chip. The system may further include an ultrasonic sensor. The ultrasonic sensing system, consisting of one or more of these components, is used to perform the aforementioned related operations.
[0084] Corresponding to the above embodiments, this application also provides a computer program product containing executable instructions that, when executed on a computer, cause the computer to perform some or all of the steps in the above method embodiments.
[0085] In this application embodiment, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent the existence of A alone, the simultaneous existence of A and B, or the existence of B alone. A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" and similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, and c can represent: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.
[0086] Those skilled in the art will recognize that the units and algorithm steps described in the embodiments disclosed herein can be implemented using electronic hardware, computer software, or a combination of electronic hardware and software. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0087] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0088] In the several embodiments provided in this application, any function, if implemented as a software functional unit and sold or used as an independent product, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0089] The above description is merely a specific embodiment of this application. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the protection scope of this application. The protection scope of this application should be determined by the protection scope of the claims.
[0090] Other embodiments of this application will readily conceive of by those skilled in the art upon consideration of the specification and practice of this application. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed in this application. The specification and embodiments are to be considered exemplary only, and the true scope and spirit of this application are indicated by the following claims.
[0091] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.
Claims
1. A method for processing ultrasonic echo signals, characterized in that, include: Marker points are extracted from the ultrasonic echo signal. The marker points carry marker point information, which includes time information to characterize the timing of the marker point's appearance and intensity information to characterize the strength of the marker point. The marker information is stored in the memory module; Each type of marker is linked through its address; Receive the read command and transmit the required marker information to the host processing circuit according to the link relationship; The host processing circuit determines obstacles based on the marker information.
2. The method according to claim 1, characterized in that, The step of storing the marker information in the memory module includes: If the current marker is not the first marker, then while storing the information of the current marker, the address information of the address where the previous marker is located will also be stored.
3. The method according to claim 1, characterized in that, The step of storing the marker information in the memory module includes: The marker information is stored in the memory module in chronological order.
4. The method according to claim 1, characterized in that, The step of transmitting the required marker information to the host processing circuit according to the link relationship includes: The required marker information is transmitted to the host processing circuit in reverse order according to the link relationship.
5. The method according to claim 1, characterized in that, The memory module includes: The memory module is provided with a dedicated storage area, which is used to store the address of the last marker information of each type of marker. When a read command is received, the address data of the dedicated storage area is read first, and then the information of each type of marker point is read in reverse order.
6. The method according to claim 1, characterized in that, The marker information includes: When a certain type of marker information appears for the first time, the starting identifier of that type of marker will be stored before the marker information is stored.
7. The method according to claim 6, characterized in that, The starting identifier of this type of marker includes: When reading a certain type of marker information in reverse order, the start identifier is the end identifier when the reading of that type of marker information is completed.
8. The method according to claim 1, characterized in that, The receiving and reading instruction includes: After receiving a read command, the data that the host processing circuit has read is marked until all data has been read.
9. The method according to any one of claims 1-8, characterized in that, The memory module includes a memory control module, which is further equipped with a command parsing module to parse different read commands and extract the marker point information corresponding to different read commands.
10. An ultrasonic sensor chip, characterized in that, It can implement the method described in any one of claims 1-9, is electrically connected to an ultrasonic sensor, is used to drive the ultrasonic sensor to emit ultrasonic signals, and is also used to receive ultrasonic signals to form ultrasonic echo signals.
11. An ultrasonic sensor system, characterized in that, The system includes a host computer and the ultrasonic sensor chip as described in claim 10. The host computer is used to send a reading command to the ultrasonic sensor chip and to determine obstacles based on the marker information sent by the ultrasonic sensor chip.