支持多线程处理的功能单元、处理器及其操作方法技术

技术编号:11644910 阅读:135 留言:0更新日期:2015-06-25 04:05
一种支持多线程处理的功能单元、处理器及其操作方法。所述支持多线程处理的功能单元包括:多个输入端口,被配置为接收多个线程的多个操作码和多个操作数,其中,所述多个输入端口中的每个输入端口被配置为接收不同的线程的操作码和操作数;多个运算器,被配置为使用接收的所述多个操作码执行运算;运算器选择器,被配置为基于每个操作码从所述多个运算器中选择一运算器来使用接收到的所述多个操作数中的一操作数执行特定运算;多个输出端口,被配置为输出每个线程的运算的运算结果。

【技术实现步骤摘要】
【专利说明】本申请要求于2013年12月20日提交到韩国知识产权局的第10-2013-0160231号韩国专利申请的优先权,该申请的公开全部合并于此以资参考。
与示例性实施例一致的设备和方法涉及一种多线程处理处理器,更具体地,涉及一种支持多线程处理的功能单元、包括该功能单元的处理器及其操作方法。
技术介绍
随着计算机技术的发展,存在很多情况是,不是仅有一个任务而是多个任务需要被同时执行。可通过多重处理、多任务处理、多重编程和/或多线程处理来实现多个任务的同时执行。通过多任务处理或多重复用等来执行多重处理,其中,多任务处理可指的是在多个处理器(或多个线程)中处理多个任务,多重复用可指的是在一个处理器中处理多个任务。例如,当同时对多个操作(即,多个任务)进行多任务处理时,操作系统(OS)可使用通过使用多个处理器(多重处理)的执行方法,或使用执行多个线程(多线程处理)的方法。多重处理和多线程处理在同时的多个任务流程的特征方面具有共同之处。然而,多重处理和多线程处理之间的差别在于:在多重处理中,多个处理彼此独立地运行,并且每个处理具有其自己的内存,而多线程处理共享一个处理中的内存;线程之间的转换速度比处理之间的转换速度更快;线程的调度执行得比处理的调度更快。
技术实现思路
根据示例性实施例的一方面,提供了一种用于支持多线程处理的功能单元,所述功能单元包括:多个输入端口,被配置为接收多个线程的操作码和操作数,其中,所述多个输入端口中的每个输入端口被配置为接收不同的线程的操作码和操作数;多个运算器,被配置为使用接收的操作码执行运算;运算器选择器,被配置为基于每个操作码从所述多个运算器中选择一运算器来使用接收到的操作数中的一操作数执行特定运算;多个输出端口,被配置为输出每个线程的运算的运算结果。所述多个输出端口中的每个输出端口可被配置为输出不同的线程的运算结果。所述多个运算器可包括多个寄存器,所述多个寄存器被配置为沿着数据通路被分配给每个线程以存储运算的运算结果。所述多个运算器中的每个运算器可被配置为执行与所述多个运算器中的其它运算器所执行的运算不同的特定运算。 所述多个运算器中的至少两个运算器可被配置为执行相同的运算。所述至少两个运算器可被配置为执行在功能单元中被频繁执行的运算。所述至少两个运算器可被配置为产生指示当前状态的信号,并将产生的信号发送到运算器选择器。根据另一示例性实施例的一方面,提供了一种处理器,包括:处理元件,被配置为包括用于同时执行多个线程的至少一个功能单元;资源冲突检测器,被配置为通过确定所述多个线程中是否有至少两个线程同时尝试在同一功能单元中执行相同运算来检测资源冲突;资源调度器,被配置为响应于检测到资源冲突,根据预定标准确定冲突的所述至少两个线程的处理顺序。资源冲突检测器可包括:资源信息存储器,被配置为存储关于所述至少一个功能单元的运算器信息;操作码比较器,被配置为在所述至少一个功能单元中的每个功能单元中比较所述多个线程的操作码;资源冲突确定器,被配置为基于操作码比较器的比较结果和资源信息存储器存储的运算器信息来确定资源冲突。运算器信息可包括以下项中的至少一个信息:运算器的类型、运算器的数量和每个运算器的状态信息。资源调度器还可被配置为针对冲突的所述至少两个线程中具有低优先级的线程,产生延迟信号。处理器还可包括:队列,被配置为存储从资源冲突检测器接收的资源冲突检测结果O处理器还可包括:刷新器,被配置为响应于存储在队列中的资源冲突检测结果由于包括在所述多个线程中的某些线程中的控制声明的执行无效而刷新队列。根据另一示例性实施例,提供了一种操作处理器的方法,所述处理器包括被配置为同时处理多个线程的至少一个功能单元,所述方法包括:通过确定所述多个线程中是否有至少两个线程同时尝试在同一功能单元中执行相同运算来检测资源冲突;响应于检测到资源冲突,根据预定标准确定冲突的所述至少两个线程的处理顺序。检测资源冲突的步骤可包括:针对所述至少一个功能单元中的每个功能单元对所述多个线程的操作码进行比较;基于比较的结果和存储的运算器信息确定资源冲突。运算器信息可包括以下项中的至少一个信息:运算器的类型、运算器的数量和每个运算器的状态信息。所述方法还可包括:将冲突的所述至少两个线程中具有低优先级的线程延迟。所述方法还可包括:将资源冲突检测结果存储在队列中。所述方法还可包括:响应于存储在队列中的资源冲突检测结果由于包括在所述多个线程中的某些线程中的控制声明的执行无效而刷新队列。【附图说明】通过结合附图对示例性实施例的以下描述,以上和/或其它方面将会变得清楚和更容易理解,其中:图1是示意性地示出根据示例性实施例的用于支持多线程处理的功能单元的框图;图2是示出根据示例性实施例的用于支持多线程处理的功能单元的示例的框图;图3是示出根据示例性实施例的处理器的示例的框图;图4是示出根据示例性实施例的图3中的资源冲突检测器的示例的详细示图;图5是示出根据另一示例性实施例的处理器的示例的框图;图6是示出根据示例性实施例的操作处理器的示例方法的流程图;图7是示出根据示例性实施例的图6中检测资源冲突的示例的详细流程图。【具体实施方式】提供以下描述以帮助读者获得对于在此描述的方法、设备和/或系统的全面理解。因此,将会为本领域的普通技术人员建议在此描述的方法、设备和/或系统的各种改变、修改和等同物。另外,为了更加清楚和简明,可省略公知的功能和结构的描述。贯穿附图和【具体实施方式】,除非另外说明,否则相同的附图标号将被理解为表示相同的元件、特征和结构。为了清楚、示意和方便,可夸大这些元件的相对大小和描绘。以下,将参照附图详细描述示例性实施例。根据一个或更多个示例性实施例,本领域的普通技术人员应理解,功能单元(也可被称为执行单元)可以是中央处理器(CPU)或处理器的一部分,并且可执行正在CPU上运行或者准备在CPU上运行的计算机程序所调用的操作和计算。功能单元可具有其自己的内部控制序列单元,内部控制序列单元也可被称为运算器选择器,并且与CPU主控制单元分离。功能单当前第1页1 2 3 4 本文档来自技高网...

【技术保护点】
一种用于支持多线程处理的功能单元,所述功能单元包括:多个输入端口,被配置为接收多个线程的多个操作码和多个操作数,其中,所述多个输入端口中的每个输入端口被配置为接收不同的线程的操作码和操作数;多个运算器,被配置为使用接收的所述多个操作码执行运算;运算器选择器,被配置为基于每个操作码从所述多个运算器之中选择一运算器来使用接收到的所述多个操作数之中的一操作数执行特定运算;多个输出端口,被配置为输出每个线程的运算的运算结果。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:赵渊坤柳秀晶
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国;KR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1