CN112667533B - 包括子系统接口的半导体设备及其通信方法 - Google Patents
包括子系统接口的半导体设备及其通信方法 Download PDFInfo
- Publication number
- CN112667533B CN112667533B CN202011102163.2A CN202011102163A CN112667533B CN 112667533 B CN112667533 B CN 112667533B CN 202011102163 A CN202011102163 A CN 202011102163A CN 112667533 B CN112667533 B CN 112667533B
- Authority
- CN
- China
- Prior art keywords
- signal
- port
- subsystem
- subsystem interface
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 32
- 238000004891 communication Methods 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000005540 biological transmission Effects 0.000 claims abstract description 35
- 230000004044 response Effects 0.000 claims description 33
- 239000000872 buffer Substances 0.000 claims description 16
- 230000001360 synchronised effect Effects 0.000 claims 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/08—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using semiconductor devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/0175—Coupling arrangements; Interface arrangements
- H03K19/0185—Coupling arrangements; Interface arrangements using field effect transistors only
- H03K19/018507—Interface arrangements
- H03K19/01855—Interface arrangements synchronous, i.e. using clock signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L29/00—Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
- H01L29/66—Types of semiconductor device ; Multistep manufacturing processes therefor
- H01L29/66007—Multistep manufacturing processes
- H01L29/66075—Multistep manufacturing processes of devices having semiconductor bodies comprising group 14 or group 13/15 materials
- H01L29/66227—Multistep manufacturing processes of devices having semiconductor bodies comprising group 14 or group 13/15 materials the devices being controllable only by the electric current supplied or the electric potential applied, to an electrode which does not carry the current to be rectified, amplified or switched, e.g. three-terminal devices
- H01L29/66409—Unipolar field-effect transistors
- H01L29/66431—Unipolar field-effect transistors with a heterojunction interface channel or gate, e.g. HFET, HIGFET, SISFET, HJFET, HEMT
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Software Systems (AREA)
- Manufacturing & Machinery (AREA)
- Ceramic Engineering (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Communication Control (AREA)
- Information Transfer Systems (AREA)
- Power Sources (AREA)
Abstract
提供子系统接口,包括子系统接口的半导体设备及其通信方法。子系统接口包括:发送器,包括配置为发送第一时钟信号的第一发送端口,配置为发送第一数据信号的第二发送端口,配置为接收第一流控信号的第一接收端口,配置为发送第一同步信号的第三发送端口;接收器,包括配置为接收第二时钟信号的第二接收端口,配置为接收第二数据信号的第三接收端口,配置为发送第二流控信号的第四发送端口,配置为接收第二同步信号的第四接收端口;和控制模块,配置为控制发送器和接收器的操作,包括通过从第二发送端口发送请求信号并接收至第一接收端口的确认信号执行发送器握手或通过接收至第三接收端口的请求信号并从第四发送端口发送确认信号执行接收器握手。
Description
相关申请的交叉引用
本申请要求于2019年10月16日向韩国知识产权局提交的韩国专利申请No.10-2019-0128193的优先权,以及由此产生的所有权益,其全部内容通过引用合并于此。
技术领域
本公开涉及半导体设备内的子系统通信,并且更具体地涉及包括子系统接口的半导体设备及其通信方法。
背景技术
当在半导体设备的独立子系统之间需要消息交换时,可以使用邮箱系统。邮箱系统可以采用一种方法,其中消息交换的一个子系统访问邮箱以生成到另一个子系统的带外中断。
每个子系统具有到邮箱的总线连接,并且邮箱位于半导体设备的被持续提供电源电压的区域中以随时接收消息。因此,通过邮箱在子系统之间提供通信可能会影响功耗和总线拥塞。
发明内容
本公开的示例性实施例可以提供一种能够减轻总线拥塞并降低功耗的子系统接口、包括该子系统接口的半导体设备和/或该子系统在半导体设备中的通信方法。
根据本发明构思的示例性实施例,一种子系统接口包括:发送器,包括:第一发送端口,被配置为发送第一时钟信号;第二发送端口,被配置为发送第一数据信号;第一接收端口,被配置为接收第一流控信号;以及第三发送端口,被配置为发送第一同步信号;接收器,包括:第二接收端口,被配置为接收第二时钟信号;第三接收端口,被配置为接收第二数据信号;第四发送端口,被配置为发送第二流控信号;以及第四接收端口,被配置为接收第二同步信号;以及控制模块,被配置为控制发送器和接收器的操作,包括通过从第二发送端口发送请求信号并且接收至第一接收端口的确认信号来执行发送器握手,或者通过接收至第三接收端口的请求信号并且从第四发送端口发送确认信号来执行接收器握手。
根据本发明构思的示例性实施例,一种半导体设备包括:第一子系统,包括具有第一端口至第四端口的第一子系统接口,所述第一子系统接口被配置为使用第一端口至第三端口建立连接的第一侧,并使用第一端口至第四端口发送数据;以及第一控制模块,通过从第二端口发送请求信号并接收至第三端口的确认信号来执行发送器握手;以及至少一个第二子系统,包括具有第五端口至第八端口的第二子系统接口,所述第二子系统接口被配置为通过使用第五端口至第七端口与第一子系统接口的第一端口至第三端口进行通信来建立与第一子系统接口的连接的第二侧,并通过使用第五端口至第八端口与第一子系统接口的第一端口至第四端口进行通信,从第一子系统接口接收数据;以及第二控制模块,被配置为通过接收至第六端口的请求信号并从第七端口发送确认信号来执行接收器握手。
根据本发明构思的示例性实施例,一种通信方法包括:提供包括至少第一端口至第四端口的第一子系统接口和包括至少第五端口至第八端口的第二子系统接口;通过从第二端口发送第一信号并接收至第三端口的第二信号来执行发送器握手,或者通过接收至第六端口的第一信号并从第七端口发送第二信号来执行接收器握手;以及通过从第一端口向第五端口提供第三信号,从第二端口向第六端口提供第四信号,从第七端口向第三端口提供第五信号,以及从第四端口向第八端口提供第八信号,将数据从第一子系统发送到第二子系统,其中,从第一端口提供给第五端口的信号是时钟信号。
根据本发明构思的示例性实施例,一种半导体设备的通信方法包括:提供包括第一端口至第四端口的第一子系统接口和包括第五端口至第八端口的第二子系统接口;从第一端口向第五端口提供时钟信号;从第二端口向第六端口提供连接请求信号;响应于连接请求信号,生成对包括第二子系统接口的第二子系统的第一带内中断;通过第一带内中断,从第七端口向第三端口提供连接响应信号,以在第一子系统接口和第二子系统接口之间建立连接。
根据本发明构思的示例性实施例,一种半导体设备的通信方法包括:提供包括第一端口至第四端口的第一子系统接口和包括第五端口至第八端口的第二子系统接口;从第一端口向第五端口提供时钟信号;监视从第七端口提供到第三端口的流控信号,以从第四端口向第八端口提供具有第一信号宽度的第一同步信号,以及从第二端口向第六端口提供数据信号,以从第一子系统接口向第二子系统接口提供数据信号。
根据本发明构思的示例性实施例,一种半导体设备的通信方法包括:提供包括第一至第四端口的第一子系统接口和包括第五至第八端口的第二子系统接口;从第一端口向第五端口提供时钟信号;从第四端口向第八端口提供同步信号;向包括第二子系统接口的第二子系统生成第一带内中断,监视从第四端口到第八端口的同步信号,以向包括第二子系统接口的第二子系统生成第二带内中断,以及通过第二带内中断改变从第七端口提供给第三端口的流控信号的信号电平,以终止第一子系统接口和第二子系统接口之间的连接。
应该理解,本公开的各方面不限于本文阐述的示例性实施例。通过参照如下继续的本公开的描述,本公开的以上和其他方面对于本公开所属领域的普通技术人员将变得更加显而易见。
附图说明
通过参照附图详细描述本公开的示例性实施例,本公开的上述以及其他方面和特征将变得更加显而易见,在附图中:
图1是根据本公开示例性实施例的半导体设备的框图;
图2是图1的子系统接口的框图;
图3是示出根据本公开示例性实施例的半导体设备的通信方法的流程图;
图4是进一步示出图3的通信方法的混合图;
图5是进一步示出图3的通信方法的框图;
图6是进一步示出图3的通信方法的时序图;
图7是进一步示出图3的通信方法的数据图;
图8是进一步示出图3的通信方法的时序图;
图9是进一步示出图3的通信方法的时序图;以及
图10是根据本公开的示例性实施例的半导体设备的框图。
具体实施方式
在下文中,将参照附图描述本发明构思的示例性实施例。
图1示出根据示例性实施例的半导体设备。
参照图1,半导体设备1可以包括:电源电压区域98,向其连续提供电源电压VCC;以及操作区域99,不包括电源电压区域98,不向其连续提供电源电压VCC。
在此,电源电压VCC没有被连续提供给操作区域99的事实可能意味着,在例如电源管理单元PMU的控制下间歇提供电源电压VCC,而不是将电源电压VCC连续提供到设置在操作区域99中的子系统100和200中的一个或两个。
唤醒逻辑300可以设置在电源电压区域98中,并且子系统100和子系统200可以设置在操作区域99中。为了便于描述本公开的技术精神,图1仅示出两个子系统100和200,实施例不限于此,因为在半导体设备中可以存在两个或更多个子系统。也就是,半导体设备1可以包括任何多个独立子系统。
在示例性实施例中,子系统100和子系统200可以是时钟管理器,并且可以是共享资源控制器或调试控制器。此外,子系统100和200可以包括蜂窝子系统、应用处理器子系统、导航子系统、传感器子系统、语音触发子系统、音频子系统、Wi-Fi子系统、子系统等,但是实施例不限于此。
子系统100可以包括子系统接口110,子系统200可以包括子系统接口210。子系统100和子系统200可以通过子系统接口110和120相互通信。换句话说,子系统100和子系统200可以使用子系统接口110和120相互交换消息或数据。
如本文所使用的,术语“子系统接口”用于促进理解,但是子系统接口110和120可以在本公开的技术范围和精神下以硬件、固件和/或软件来实现。如果需要,每个或任何子系统接口都可以实现为子系统接口“设备”、“电路”、“单元”或“模块”。在示例性实施例中,根据本发明构思的子系统接口110和120可以分别以有形地体现在程序存储设备中的程序步骤来实现。
子系统接口110可以包括发送器120和接收器130,并且子系统接口210可以包括接收器230和发送器220。发送器120可以通过信道或电线连接到接收器220,并且发送器220可以通过信道或电线连接到接收器130。
也就是说,子系统100可以通过发送器120向接收器230发送消息或数据,并且子系统200可以通过发送器220向接收器130发送消息或数据。
唤醒逻辑300可以被设置在电源电压区域98中以向子系统100和/或200供电。例如,唤醒逻辑300从子系统100接收连接请求信号RS,并且响应于此,当子系统200未处于启用状态时,为子系统200供电,从而可以启用子系统200。此外,唤醒逻辑300从子系统200接收连接请求信号RS,并且响应于此,当子系统100未处于启用状态时向子系统100供电,从而可以启用子系统100。
在下文中,将参照图2描述子系统接口110的示例性配置。以下描述同样适用于子系统接口210,但是可以省略重复的描述。
图2示出了图1的子系统接口。
参照图2,子系统接口110包括发送器120、接收器130、配置模块140、4线控制模块150、DMA模块160、总线接口模块170和存储单元180。
尽管为了简化描述图2示出子系统接口110包括存储单元180的实施例,但是实施例不限于所示出的示例。如果需要,可以将存储单元180设置在子系统100中子系统接口110外部。此外,可以将存储单元180设置在子系统100外部。
一起参照图1和图2,发送器120可以包括四个端口CKO、DO、FCI和SO,并且接收器130还可以包括四个端口CKI、DI、FCO和SI。发送器120的四个端口CKO、DO、FCI和SO可以连接到独立子系统的接收器。例如,子系统100的发送器120的四个端口CKO、DO、FCI和SO可以分别连接到子系统200的接收器230的四个端口CKI、DI、FCO和SI。此外,子系统200的发送器220的四个端口CKO、DO、FCI和SO可以分别连接到子系统100的接收器130的四个端口CKI、DI、FCO和SI。
可以通过端口CKO将时钟信号CKS提供给另一个子系统,并且可以通过端口CKI从另一个子系统提供时钟信号CKS。当子系统100和子系统200相互交换数据时,时钟信号CKS可以用于定时控制,例如,以在子系统100和子系统200之间交换信号。换句话说,子系统100可以根据时钟信号CKS的周期向子系统200发送消息或数据。在子系统100建立连接以将消息或数据发送到子系统200的情况下,可以在维持连接的同时从子系统100向子系统200提供时钟信号CKS。
可以通过端口DO从子系统100提供连接请求信号RS和数据信号DS,并且可以通过端口DI从另一个子系统提供连接请求信号RS和数据信号DS。当子系统100和子系统200相互交换数据时,连接请求信号RS可以例如被唤醒逻辑300用来启用子系统100或子系统200的子系统接口,并且数据信号DS被用于例如从子系统100向子系统200发送必要的消息或数据。如图2所示,每个请求信号RS由一个子系统的接口发送器提供给唤醒逻辑300。在该实施例中,每个请求信号RS也由一个子系统的接口发送器提供给另一个子系统的接口接收器,但是实施例不限于此。例如,如果唤醒逻辑也向另一个子系统提供响应于RS的信号,则另一个子系统不必接收RS,即使另一个子系统已经被启用。
可以通过端口FCI从另一个子系统提供连接响应信号AC和流控信号FCS,并且可以通过端口FCO将连接响应信号AC和流控信号FCS提供给另一个子系统。
也就是说,在发送器120中,端口FCI可以用于接收信号,这与其他端口CKO、DO和SO不同,并且在接收器130中,端口FCO可以用于发送信号,与其他端口CKI、DI和SI不同。
当子系统100和子系统200相互交换数据时,连接响应信号AC可以被用来例如建立用于子系统100和子系统200之间的通信的连接。
流控信号FCS可以被用来例如发送子系统100和子系统200的数据接收状态。具体地,当子系统100将数据发送到子系统200时,子系统200可以通过流控信号FCS通知子系统100数据接收是否可能。类似地,当子系统200向子系统100发送数据时,子系统100可以通过流控信号FCS通知子系统200数据接收是否可能。
可以通过端口SO将同步信号SS提供给另一个子系统,并且可以通过端口SI从另一个子系统提供同步信号SS。当子系统100和子系统200相互交换数据时,同步信号SS可以用于指示数据信号DS的提供是否开始,或者指示数据信号DS的提供是否已经完成。
具体地,当子系统100将数据发送到子系统200时,每当发送特定数据单元时,子系统100可以通过同步信号SS通知子系统200将要发送新数据单元。类似地,当子系统200向子系统100发送数据时,每当发送特定数据单元时,子系统200可以通过同步信号SS通知子系统100将要发送新数据单元。
配置模块140可以是用于配置4线接口的模块。在示例性实施例中,配置模块140可以使用软件来配置4线接口。
4线控制模块150可以对发送器120中包括的四个端口CKO、DO、FCI和SO以及接收器130中包括的四个端口(CKI、DI、FCO、SI)的操作执行控制。
DMA模块160用于通过总线读取要发送的消息或数据,或者通过总线写入接收的消息或数据,并且可以通过总线接口模块170连接到总线。当通过总线读取数据或将数据写入总线时,DMA模块160充当总线主设备(busmaster),并且也可以用作总线从设备(busslave),其将外部系统或设备(例如,CPU)发送的数据通过4线接口写入缓冲区。
存储单元180可以包括发送缓冲器182和184以及接收缓冲器186和188。
可以通过端口DO以数据信号DS的形式提供存储在发送缓冲器182和184中的数据。通过端口DI接收的数据信号DS可以存储在接收缓冲器186和188中。
在示例性实施例中,当存储在接收缓冲器186和188中的数据量大于或等于预定存储量时,子系统接口110可以通过端口FCO通知另一个子系统。具体地,当存储在接收缓冲器186和188中的数据量大于或等于预定存储量时,子系统接口110可以通过改变通过端口FCO提供给另一个子系统的流控信号FCS的信号电平来通知另一个子系统。
在示例性实施例中,当接收缓冲器186和188之一充满数据时,子系统接口110可以发送请求,使得通过改变通过端口FCO提供给另一个子系统的流控信号FCS的信号电平不再从另一个子系统发送数据信号DS。然而,实施例不限于此,并且子系统接口110改变通过端口FCO提供给另一个子系统的流控信号FCS的信号电平的条件可以被修改或不同地实现。
在下文中,将参照图3至图9描述根据示例性实施例的半导体设备的通信方法。
图3示出根据示例性实施例的半导体设备的通信方法。图4至图9示出图3所示的半导体设备的通信方法。
在下面的描述中,将对于其中图1中所示的子系统100和子系统200相互连接,并且在子系统100将数据信号DS发送到子系统200之后,子系统100与子系统200之间的连接终止的示例,描述根据示例性实施例的半导体设备的通信方法。
首先,参照图3,通过如图4所示的握手协议在步骤S100建立连接。
参照图2和图4至图6,图4的子系统100可以发起与图4的子系统200的握手协议,在图4的步骤S102中,向图2、图4、图5和图6的子系统接口110提供命令CMD,该命令CMD请求与子系统接口210的连接。相应地,子系统接口110的配置模块140可以设置子系统接口110的传输参数。尽管为了描述的简洁而被省略,但是子系统接口210可以包括由相似的附图标记标识的相似组件,诸如发送器220、接收器230,以及如果类似地可配置为发起握手以将数据发送到另一个子系统,则可以包括配置模块240。在其中第二子系统200不需要发起握手或将数据发送到另一个子系统的可选实施例中,第二子系统接口210的组件或功能可以相应地减少,或者被配置为与第一子系统接口110的组件或功能不同。
在步骤S104,子系统接口110可以通过端口DO输出连接请求信号RS,并且唤醒逻辑300可以接收连接请求信号RS。
例如,子系统接口110可以将通过端口DO输出的连接请求信号RS的信号电平从第一电平(例如,低电平L)改变为第二电平(例如,高电平H),并且在步骤S106,唤醒逻辑300可以接收它并启用子系统接口210。
同时,通过子系统接口110的端口DO输出的连接请求信号RS也可以通过端口DI直接提供给子系统接口210以发起握手。
唤醒逻辑300接收通过子系统接口110的端口D0输出的连接请求信号RS,并确定图1的子系统200(包括子系统接口210)是否启用。如果包括子系统接口210的子系统200被启用,则唤醒逻辑300不需要执行单独的操作。然而,如果包括子系统接口210的子系统200未被启用,则在步骤S106唤醒逻辑300向图1的子系统200供电使得包括子系统接口210的子系统200被启用。
子系统接口210现在可以通过端口DI接收连接请求信号RS,并在步骤S108向图1的子系统200生成带内中断。
具体地,当子系统接口210被启用并且通过端口DI接收的连接请求信号RS的信号电平从第一电平L改变为第二电平H时,子系统接口210可以对包括子系统接口210的子系统200生成带内中断。
当子系统200中发生带内中断时,子系统接口210的配置模块240可以设置子系统接口210的接收参数。然后,在步骤S110,子系统200可以向子系统接口210提供命令CMD,其接受与子系统接口110连接。相应地,在步骤S112,子系统接口210可以生成连接响应信号ACK或AC,从而完成握手。
例如,子系统接口210可以将通过端口FCO输出的连接响应信号AC的信号电平从第一电平L改变为第二电平H。
在步骤S112,子系统接口210还可以通过端口FCO输出连接响应信号AC,并且子系统接口110可以通过端口FCI接收连接响应信号AC。
在子系统接口210可能已经通过端口DI接收到请求信号RS之后,在步骤S114,已经通过端口FCI接收到连接响应信号AC的子系统接口110可以停止通过端口DO输出连接请求信号RS。
例如,子系统接口110可以将通过端口DO输出的连接请求信号RS的信号电平从第二电平H改变为第一电平L,并且子系统接口210可以通过端口DI接收它。
同时,在图6的步骤S118中,子系统200中生成的带内中断可以由软件清除。
通过该处理,可以在子系统接口110和子系统接口210之间建立用于消息或数据传输的连接。
然后,参照图3和图4,在图3的步骤S200发送数据。
首先,将参照图2和图7描述从子系统接口110发送到子系统接口210的数据信号DS的配置。
参照图2和图7,从子系统接口110发送到子系统接口210的数据信号DS可以包括多个有效载荷信号,并且每个有效载荷信号可以包括多个封包信号。尽管图7示出其中一个有效载荷信号包括八个封包信号(封包0至封包7)的示例,实施例不限于此。
子系统接口110可以响应于每个有效载荷信号通过端口SO将同步信号SS提供给子系统接口210,并且子系统接口210可以通过端口SI接收同步信号SS。
也就是说,子系统接口110可以通过端口SO将同步信号SS提供给子系统接口210,以通知子系统接口210下一个有效载荷信号将被发送。子系统接口210可以通过端口S1接收同步信号SS,以知道将要接收下一个有效载荷信号。
在示例性实施例中,子系统接口110可以在每个有效载荷信号的最后封包信号(例如,封包7)通过端口DO提供给子系统接口210的同时,通过端口S0将同步信号SS提供给子系统接口210。换句话说,子系统接口110可以在通过端口DO将新的有效载荷信号提供给子系统接口210之前,通过端口SO将同步信号SS提供给子系统接口210。
当所有要发送到子系统接口210的数据都被发送时,子系统接口110响应于最后一个有效载荷信号(例如,最后一个有效负载信号的最后一个封包信号)通过端口SO将同步信号SS发送到子系统接口210。
在这种情况下提供的同步信号SS的信号宽度可以与指示要提供新的有效载荷信号的同步信号SS的信号宽度不同。具体地,当子系统接口110将所有要发送的数据都发送到子系统接口210时,可以通过端口SO向子系统接口210提供信号宽度大于指示要提供新的有效载荷信号的同步信号SS的信号宽度的同步信号SS。
同时,子系统接口110可以通过监视通过端口FCI接收的流控信号FCS将同步信号SS提供给子系统接口210。
当图2的接收缓冲器186和188的数据存储量由于从子系统接口110接收的数据而超过预定存储量,因此子系统接口210可以通过输出到端口FCO的流控信号FCS将该事实通知子系统接口110。
相应地,子系统接口110可以监视通过端口FCI接收的流控信号FCS,并且仅在子系统接口210的接收缓冲器186和188的数据存储量不超过预定存储量的状态下,通过端口SO将同步信号SS提供给子系统接口210。
参照图2和图8,在通过端口DO输出有效载荷信号的最后一个封包信号的第一时间点t1,子系统接口110监视在端口FCI接收的流控信号FCS。由于流控信号FCS的信号电平被维持在第二电平H,因此可以确定子系统接口210的接收缓冲器的存储量不超过预定存储量。
相应地,生成同步信号SS,并且通过端口SO输出生成的同步信号SS。在示例性实施例中,同步信号SS的信号宽度可以等于例如时钟信号CKS的一个周期,但是实施例不限于此。
通过子系统接口110的端口SO输出的同步信号SS可以由子系统接口210通过端口SI接收。
在第二时间点t2,可以通过子系统接口110的端口DO输出新的有效载荷信号。然后,子系统接口210可以通过端口DI接收输出的有效载荷信号。
当以这种方式执行数据传输时,在第三时间点t3,子系统接口210的接收缓冲区可能超过预定存储量。在这种情况下,子系统接口210将输出到端口FCO的流控信号FCS的信号电平从第二电平H改变为第一电平L。已经通过端口FCI接收流控信号FCS的子系统接口110可以认识到子系统接口210的接收缓冲区中的存储空间不足。
在有必要通知要提供新的有效载荷信号的第四时间点t4,子系统接口110监视在端口FCI接收的流控信号FCS。由于流控信号FCS的信号电平仍然保持在第一电平L,因此子系统接口110不像第一时间点t1那样生成同步信号SS。因此,通过端口DO的数据信号DS的传输也被停止。
然后,在第五时间点t5,当子系统接口210的接收缓冲器的数据存储量小于或等于预定存储量时,子系统接口210将输出到端口FCO的流控信号FCS的信号电平从第一电平L改变为第二电平H。已经通过端口FCI接收流控信号FCS的子系统接口110可以识别出子系统接口210的接收缓冲器的存储空间的短缺已经得到缓解。
然后,在第六时间点t6,子系统接口110通过端口SO输出例如同步信号SS,该同步信号SS可以与时钟信号CKS的一个周期相同。通过子系统接口110的端口SO输出的同步信号SS可以由子系统接口210通过端口SI接收。然后,通过子系统接口110的端口DO输出新的有效载荷信号,并且输出的有效载荷信号可以由子系统接口210通过端口DI接收。
通过该处理,可以执行需要从子系统接口110发送到子系统接口210的消息或数据的传输。
然后,参照图3,在步骤S300终止连接。
参照图2、图4和图9,当子系统接口110完成所有需要发送到子系统接口210的数据的传输时,子系统接口110通过端口SO输出例如同步信号SS,该同步信号SS的信号宽度与用于新的有效载荷的SS的信号宽度不同,诸如时钟信号CKS的至少两个周期。随后,在图9的步骤S302,在包括子系统接口110的图1的子系统100中生成带内中断。
当在图1的子系统100中发生带内中断时,图2的子系统接口110的配置模块140可以根据子系统接口110的连接的终止对传输参数执行配置。
同时,在图9的步骤S304,已经通过端口SI接收到例如指示完成的传输的同步信号SS(例如具有时钟信号CKS的至少两个周期的信号宽度)的子系统接口210可以对包括子系统接口210的图1的子系统200生成带内中断。
当子系统200中发生带内中断时,子系统接口210的配置模块240可以根据子系统接口210的连接的终止对传输参数执行配置。
由于不再需要流控信号FCS,因此在步骤S306,子系统接口210将流控信号FCS的信号电平从第二电平H改变为第一电平L。子系统接口110通过端口FCI接收流控信号FCS。
然后,端口FCO和FCI可以用于在下一个连接中发送和接收连接响应信号ACK或AC。另外,端口DO和DI可用于在下一个连接中发送和接收连接请求信号RS。
在步骤S308,可以通过软件清除在子系统100中生成的带内中断,并且在步骤S310,可以通过软件清除在子系统200中生成的带内中断。
通过该处理,可以终止子系统接口110和子系统接口210之间的用于消息或数据传输的连接。
如上所述,在本实施例中,第一子系统向第二子系统发送消息或数据需要四根线,第二子系统向第一子系统发送消息或数据需要四根线。换句话说,总共八根线可用于在两个不同的子系统之间交换消息或数据。
此外,如上所述,由于图1的子系统100和子系统200使用带内中断建立用于通信的连接,但是不需要用于子系统之间通信的诸如邮箱的单独介质。也就是说,不必将用于通信的介质放置在被连续提供电源电压的电源电压区域中。因此,可以减少功耗并且可以减轻信号拥塞。
此外,根据本实施例,可以在子系统之间发送大量数据。此外,当发送大量数据时,不必提供单独的先进先出(FIFO)队列,并且子系统中的常规存储介质可以用于数据传输。此外,直接存储器访问(direct memory access,DMA)功能可用于数据传输,而无需加载中央处理单元(CPU),从而提高了通信速度。
图10示出根据示例性实施例的半导体设备。
在下文中,将主要描述与上述实施例的不同之处,从而可以省略重复的描述。
参照图10,半导体设备2可以包括多个子系统600、700、800和900。
子系统600可以包括子系统接口610。子系统接口610可以包括发送器620和接收器630。发送器620可以包括第一发送器622、第二发送器624和第三发送器626,并且接收器630可以包括第一接收器632、第二接收器634和第三接收器636。
子系统700可以包括子系统接口710。子系统接口710可以包括发送器720和接收器730。子系统800可以包括子系统接口810。子系统接口810可以包括发送器820和接收器830。子系统900可以包括子系统接口910。子系统接口910可以包括发送器920和接收器930。
在该实施例中,子系统600可以向子系统700、800和900广播消息或数据,或者可以分别发送给每个子系统。
为此,子系统600的第一发送器622可以连接到子系统700的接收器730,子系统600的第二发送器624可以连接到子系统800的接收器830,以及子系统600的第三发送器626可以连接到子系统900的接收器930。类似地,子系统600的第一接收器632可以连接到子系统700的发送器720,子系统600的第二接收器634可以连接到子系统800的发送器820,以及子系统600的第三接收器636可以连接到子系统900的发送器920。
根据该配置,子系统600可以同时向子系统700、800和900发送相同的消息或数据,或者可以分别向每个子系统发送消息或数据。具体地,在与所有子系统700、800和900的连接的创建完成之后,子系统600可以同时将相同的消息或数据发送到子系统700、800和900。
在示例性实施例中,子系统600可以包括传感器子系统或语音触发子系统,并且子系统700、800和900可以分别包括蜂窝子系统、导航子系统和音频子系统。子系统600可以周期性地将传感器数据、语音输入数据或音频输入数据广播到子系统700、800和900。然而,实施例不限于此,并且子系统600、700、800和900的实施例可以以不同的方式修改。
在总结本详细描述时,相关领域的普通技术人员将理解,可以在不背离本公开的原理、范围和精神的情况下对在此描述的示例性实施例进行许多变化和修改。因此,仅在一般和描述性意义上提供了本发明的公开实施例,而不是出于限制的目的。如所附权利要求书及其等效物中所阐述定义本发明。
Claims (19)
1.一种子系统接口,包括:
发送器,包括:第一发送端口,被配置为发送第一时钟信号;第二发送端口,被配置为发送第一数据信号;第一接收端口,被配置为接收第一流控信号;以及第三发送端口,被配置为发送第一同步信号;
接收器,包括:第二接收端口,被配置为接收第二时钟信号;第三接收端口,被配置为接收第二数据信号;第四发送端口,被配置为发送第二流控信号;以及第四接收端口,被配置为接收第二同步信号;以及
控制模块,被配置为控制发送器和接收器的操作,包括通过从第二发送端口发送请求信号并且接收至第一接收端口的确认信号来执行发送器握手,或者通过接收至第三接收端口的请求信号并且从第四发送端口发送确认信号来执行接收器握手。
2.根据权利要求1所述的子系统接口,其中,控制模块通过第二发送端口发送连接请求信号,并在通过第一接收端口接收作为对连接请求信号的响应的连接响应信号之后,通过第二发送端口发送第一数据信号。
3.根据权利要求2所述的子系统接口,其中,在通过第二发送端口发送第一数据信号的同时,当通过第一接收端口接收的第一流控信号的信号电平改变时,控制模块停止发送第一数据信号。
4.根据权利要求2所述的子系统接口,其中,第一数据信号包括第一有效载荷信号和第二有效载荷信号,以及
其中,控制模块响应于第一有效载荷信号通过第三发送端口发送第一同步信号,并响应于第二有效载荷信号通过第三发送端口发送第一同步信号。
5.根据权利要求4所述的子系统接口,其中,控制模块在第一有效载荷信号通过第二发送端口发送之前,通过第三发送端口发送第一同步信号;
其中,控制模块在第二有效载荷信号通过第二发送端口发送之前,通过第三发送端口发送第一同步信号。
6.根据权利要求4所述的子系统接口,其中,第一同步信号包括具有第一信号宽度的第三同步信号和具有不同于第一信号宽度的第二信号宽度的第四同步信号,
其中,控制模块响应于第一有效载荷信号和第二有效载荷信号通过第三发送端口发送第三同步信号,以及
其中,控制模块响应于第一数据信号的传输完成,通过第三发送端口发送第四同步信号。
7.根据权利要求6所述的子系统接口,其中,第二信号宽度大于第一信号宽度。
8.根据权利要求2所述的子系统接口,其中,控制模块通过第三接收端口接收连接请求信号,
其中,控制模块响应于连接请求信号,通过第四发送端口发送连接响应信号。
9.根据权利要求1所述的子系统接口,其中,控制模块通过第三接收端口接收连接请求信号,
其中,控制模块响应于连接请求信号生成中断,以及
其中,控制模块响应于连接请求信号,通过第四发送端口发送连接响应信号。
10.根据权利要求9所述的子系统接口,其中,在通过第三接收端口接收第二数据信号的同时,如果存储在接收缓冲器中的数据量等于或大于预定存储量,则控制模块改变通过第四发送端口发送的第二流控信号的信号电平。
11.根据权利要求1所述的子系统接口,其中,第二同步信号包括具有第一信号宽度的第三同步信号和具有不同于第一信号宽度的第二信号宽度的第四同步信号,以及
其中,控制模块通过第四接收端口接收第三同步信号和第四同步信号,
其中,控制模块不响应于第三同步信号生成带内中断,以及
其中,控制模块响应于第四同步信号生成带内中断。
12.一种半导体设备,包括:
第一子系统,包括具有第一端口至第四端口的第一子系统接口,所述第一子系统接口被配置为使用第一端口至第三端口建立连接的第一侧,并使用第一端口至第四端口发送数据;以及第一控制模块,通过从第二端口发送请求信号并接收至第三端口的确认信号来执行发送器握手;以及
至少一个第二子系统,包括具有第五端口至第八端口的第二子系统接口,所述第二子系统接口被配置为通过使用第五端口至第七端口与第一子系统接口的第一端口至第三端口进行通信来建立与第一子系统接口的连接的第二侧,并通过使用第五端口至第八端口与第一子系统接口的第一端口至第四端口进行通信从第一子系统接口接收数据;以及第二控制模块,被配置为通过接收至第六端口的请求信号并从第七端口发送确认信号来执行接收器握手;
其中,第一子系统接口通过第一端口向第五端口发送时钟信号,并且通过第二端口向第六端口发送连接请求信号,
其中,第二子系统接口通过第七端口向第三端口发送连接响应信号。
13.根据权利要求12所述的半导体设备,还包括:
被连续提供电源电压的电源电压区域;
不被连续提供电源电压的操作区域;以及
设置在电源电压区域的唤醒逻辑,
其中,第二子系统设置在操作区域中,以及
其中,唤醒逻辑从第一子系统接收信号以向第二子系统供电。
14.根据权利要求13所述的半导体设备,其中,第一子系统接口通过第二端口向唤醒逻辑和第六端口发送连接请求信号,
其中,唤醒逻辑响应于连接请求信号向第二子系统供电。
15.根据权利要求12所述的半导体设备,其中,在建立连接的第二侧之后,第一子系统接口通过第二端口将数据发送到第六端口。
16.根据权利要求12所述的半导体设备,其中,响应于通过第六端口接收的连接请求信号,第二子系统接口生成带内中断以建立与第一子系统接口的连接的第二侧,并且其中,连接响应信号由带内中断生成,第二子系统接口通过第七端口向第三端口发送连接响应信号。
17.根据权利要求12所述的半导体设备,其中,第一子系统接口响应于通过第三端口接收的连接响应信号改变连接请求信号的信号电平。
18.一种通信方法,包括:
提供包括至少第一端口至第四端口的第一子系统接口和包括至少第五端口至第八端口的第二子系统接口;
通过从第二端口发送第一信号并接收至第三端口的第二信号来执行发送器握手,或者通过接收至第六端口的第一信号并从第七端口发送第二信号来执行接收器握手;以及
通过从第一端口向第五端口提供第三信号,从第二端口向第六端口提供第四信号,从第七端口向第三端口提供第五信号,以及从第四端口向第八端口提供第八信号,将数据从第一子系统发送到第二子系统,
其中,从第一端口提供给第五端口的信号是时钟信号。
19.根据权利要求18所述的通信方法,其中,第二端口提供给第六端口的信号为连接请求信号,第七端口提供给第三端口的信号为连接响应信号,所述方法还包括:
响应于连接请求信号,生成对包括第二子系统接口的第二子系统的第一带内中断;以及
通过第一带内中断提供连接响应信号,以建立第一子系统接口与第二子系统接口之间的连接。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190128193A KR20210045009A (ko) | 2019-10-16 | 2019-10-16 | 인터페이싱 장치, 인터페이싱 장치를 포함하는 반도체 장치 및 반도체 장치의 통신 방법 |
KR10-2019-0128193 | 2019-10-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112667533A CN112667533A (zh) | 2021-04-16 |
CN112667533B true CN112667533B (zh) | 2024-05-28 |
Family
ID=75268771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011102163.2A Active CN112667533B (zh) | 2019-10-16 | 2020-10-15 | 包括子系统接口的半导体设备及其通信方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11233514B2 (zh) |
KR (1) | KR20210045009A (zh) |
CN (1) | CN112667533B (zh) |
DE (1) | DE102020116585A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115800992B (zh) * | 2023-02-07 | 2023-06-02 | 浪潮电子信息产业股份有限公司 | 一种握手信号的拆分电路、方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104866453A (zh) * | 2014-02-20 | 2015-08-26 | 三星电子株式会社 | 系统芯片、总线接口连接电路和其总线接口连接方法 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3384838B2 (ja) * | 1992-06-29 | 2003-03-10 | シャープ株式会社 | インターフェース装置 |
GB9419246D0 (en) | 1994-09-23 | 1994-11-09 | Cambridge Consultants | Data processing circuits and interfaces |
JPH10150475A (ja) * | 1996-11-18 | 1998-06-02 | Mitsubishi Electric Corp | データ転送装置 |
US6925512B2 (en) | 2001-10-15 | 2005-08-02 | Intel Corporation | Communication between two embedded processors |
US20060047754A1 (en) | 2002-11-15 | 2006-03-02 | Infineon Technologies Ag | Mailbox interface between processors |
JP4777882B2 (ja) | 2003-06-02 | 2011-09-21 | クゥアルコム・インコーポレイテッド | より高いデータレートのための信号プロトコルおよびインターフェイスの生成および実行 |
WO2006030904A1 (ja) * | 2004-09-16 | 2006-03-23 | Nec Corporation | 半導体装置、及び通信制御方法 |
US7430624B2 (en) | 2005-10-04 | 2008-09-30 | International Business Machines Corporation | High speed on-chip serial link apparatus and method |
US8559576B2 (en) * | 2008-06-30 | 2013-10-15 | Oracle America, Inc. | Adaptive synchronization circuit |
WO2010080176A1 (en) * | 2009-01-12 | 2010-07-15 | Rambus Inc. | Mesochronous signaling system with multiple power modes |
EP2466478B1 (en) * | 2010-12-20 | 2013-11-27 | STMicroelectronics (Grenoble 2) SAS | Communication system, and corresponding integrated circuit and method |
US9515204B2 (en) * | 2012-08-07 | 2016-12-06 | Rambus Inc. | Synchronous wired-or ACK status for memory with variable write latency |
US9100315B2 (en) * | 2012-09-04 | 2015-08-04 | Granite Mountain Technologies | Source asynchronous signaling |
US9692672B2 (en) * | 2014-01-23 | 2017-06-27 | Stmicroelectronics S.R.L. | Communication system, and corresponding integrated circuit and method |
US20150362980A1 (en) | 2014-06-16 | 2015-12-17 | Apple Inc. | Always-On Processor as a Coprocessor |
WO2016057567A1 (en) * | 2014-10-06 | 2016-04-14 | Cornell University | Methods and systems for synchronization between multiple clock domains |
US9755821B2 (en) | 2015-04-02 | 2017-09-05 | Samsung Electronics Co., Ltd. | Device including single wire interface and data processing system including the same |
KR102384347B1 (ko) * | 2015-05-26 | 2022-04-07 | 삼성전자주식회사 | 클록 관리 유닛을 포함하는 시스템 온 칩 및 그 동작방법 |
GB2539443B (en) * | 2015-06-16 | 2020-02-12 | Advanced Risc Mach Ltd | A transmitter, a receiver, a data transfer system and a method of data transfer |
US10120815B2 (en) * | 2015-06-18 | 2018-11-06 | Microchip Technology Incorporated | Configurable mailbox data buffer apparatus |
US9858234B2 (en) * | 2015-07-17 | 2018-01-02 | Parade Technologies, Ltd. | System transparent retimer |
US10296065B2 (en) * | 2016-01-25 | 2019-05-21 | Samsung Electronics Co., Ltd. | Clock management using full handshaking |
US20170222684A1 (en) * | 2016-02-01 | 2017-08-03 | Qualcomm Incorporated | Unidirectional clock signaling in a high-speed serial link |
US10503674B2 (en) * | 2016-02-03 | 2019-12-10 | Samsung Electronics Co., Ltd. | Semiconductor device including a clock source for generating a clock signal and a clock control circuit for controlling the clock source in hardware, a semiconductor system including the semiconductor device, and a method of operating the semiconductor device |
EP3343386B1 (en) * | 2016-12-30 | 2020-02-05 | GN Audio A/S | Apparatus with inter-communicating processors |
KR20180085605A (ko) * | 2017-01-19 | 2018-07-27 | 삼성전자주식회사 | 핸드쉐이크를 이용하여 메모리의 전력을 조절하는 시스템 온 칩 및 이의 동작 방법 |
US10719469B2 (en) | 2017-02-28 | 2020-07-21 | Intel Corporation | Inband messaging method for integrated type-C universal serial bus detection using enhanced serial peripheral interconnect |
US20200233829A1 (en) * | 2019-01-22 | 2020-07-23 | Qualcomm Incorporated | Multi-lane system power management interface |
-
2019
- 2019-10-16 KR KR1020190128193A patent/KR20210045009A/ko active Search and Examination
-
2020
- 2020-05-22 US US16/881,318 patent/US11233514B2/en active Active
- 2020-06-24 DE DE102020116585.4A patent/DE102020116585A1/de active Pending
- 2020-10-15 CN CN202011102163.2A patent/CN112667533B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104866453A (zh) * | 2014-02-20 | 2015-08-26 | 三星电子株式会社 | 系统芯片、总线接口连接电路和其总线接口连接方法 |
Also Published As
Publication number | Publication date |
---|---|
DE102020116585A1 (de) | 2021-04-22 |
US20210119631A1 (en) | 2021-04-22 |
KR20210045009A (ko) | 2021-04-26 |
US11233514B2 (en) | 2022-01-25 |
CN112667533A (zh) | 2021-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7565467B2 (en) | USB hub, USB-compliant apparatus, and communication system | |
US11570123B2 (en) | Generating, at least in part, and/or receiving, at least in part, at least one request | |
EP2676204B1 (en) | Serial interface | |
US20180357199A1 (en) | Slave-to-slave communication in i3c bus topology | |
US20190227971A1 (en) | Architecture for consolidating multiple sources of low-bandwidth data over a serial bus | |
KR101699784B1 (ko) | 버스 시스템 및 그것의 동작 방법 | |
CN109062847B (zh) | 片上系统、用于rs485串口通讯的ip核及其控制方法 | |
US8332682B2 (en) | Interface control device | |
US11188486B2 (en) | Master chip, slave chip, and inter-chip DMA transmission system | |
CN113424164B (zh) | USB 2.0转接驱动器和eUSB2中继器中的功耗降低 | |
JP2005122372A (ja) | データ転送制御装置、電子機器及びデータ転送制御方法 | |
CN112269749B (zh) | I2c通信系统 | |
CN112667533B (zh) | 包括子系统接口的半导体设备及其通信方法 | |
US10891242B2 (en) | Embedded USB2 (eUSB2) repeater operation | |
EP2699030A1 (en) | Route switching device, network switching system and route switching method | |
JP4210993B2 (ja) | Usbハブ装置、usb周辺装置及びデータ送受信方法 | |
CN114185830A (zh) | 基于mailbox的多处理器通信方法、设备、系统和存储介质 | |
WO2003003221A2 (en) | Method for enabling a communication between processes, processing system, integrated chip and module for such a chip | |
CN115563049A (zh) | Spi发送模式赋值结构的实现方法 | |
WO2009069094A1 (en) | Method and device for routing data between components | |
US11822501B2 (en) | Bus protocol for multiple chipsets | |
CN114356816B (zh) | 一种异步传输装置 | |
CN110995613B (zh) | 一种消除EtherCAT通讯周期抖动的系统及方法 | |
TW202319878A (zh) | 電源設備及其資料傳輸方法 | |
JPH10290246A (ja) | 通信装置および通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |