CN112634422A - 一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法 - Google Patents
一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法 Download PDFInfo
- Publication number
- CN112634422A CN112634422A CN202011542573.9A CN202011542573A CN112634422A CN 112634422 A CN112634422 A CN 112634422A CN 202011542573 A CN202011542573 A CN 202011542573A CN 112634422 A CN112634422 A CN 112634422A
- Authority
- CN
- China
- Prior art keywords
- fifo
- data
- socket
- vertex
- mode
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000008569 process Effects 0.000 claims abstract description 41
- 238000004040 coloring Methods 0.000 claims abstract description 24
- 230000005540 biological transmission Effects 0.000 claims abstract description 14
- 230000006870 function Effects 0.000 claims description 47
- 239000012634 fragment Substances 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 12
- 230000000630 rising effect Effects 0.000 claims description 6
- 238000004088 simulation Methods 0.000 claims description 6
- 239000003999 initiator Substances 0.000 claims description 5
- 238000003672 processing method Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 abstract description 6
- 238000013461 design Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000005094 computer simulation Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Multi Processors (AREA)
Abstract
本发明涉及计算机硬件建模技术领域,涉及一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法。包括GPU输出控制模块;GPU输出控制模块包括输出控制单元a和输出控制单元b;输出控制单元a用于维护上级输出模块中SSC1~SSC3的顶点warp,像素warp的输出顺序,顶点着色输出数据的传输和组装,像素着色输出数据传输和组装;输出控制单元b用于维护SSC4~SSC6的顶点warp,像素warp的输出顺序,顶点着色输出数据的传输和组装;GPU输出控制模块还包括若干进程和套接字;GPU输出控制模块还包括八个FIFO单元。本发明提供了一种能够将复杂繁琐且易出现歧义的文字转换为清晰的图形模式,实现了对GPU输出控制模块架构的初步验证的基于SysML视图的GPU输出控制模块的TLM装置及操作方法。
Description
技术领域
本发明属于计算机硬件建模技术领域,涉及一种GPU输出控制模块的TLM装置,尤其涉及一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法。
背景技术
SysML是国际系统工程学会INCOSE(international council on SystemsEngineering)和对象管理组织OMG(Object Management Engineering)在对UML2.0的子集进行重用和扩展的基础上,提出的一种新式系统建模语言。SysML通过用新的属性和约束来扩展现有的 UML2.0,从而定义了新的建模元素。
SysML是System Modeling Language的缩写,它是一种面向对象的图形化建模语言,相比于UML语言(Unified Modeling Language,统一建模语言)它扩展了一些新的元素,更加利于系统工程建模,相比于其他比如SCADE建模语言,SysML不仅能够对软件进行建模,也能够对硬件以及整个系统进行建模。传统的芯片设计过程中,随着设计的复杂度不断增大,设计代码以及大量的文档就会变得越来越难以掌握,SysML通过使用各种各样的图形从多个角度来呈现整体的设计,使庞大复杂的系统能够被清晰、快速的展现出来,为软件、硬件开发提供模型化和可视化支持,达到缩短设计周期,加快开发进度以及辅助系统设计和验证的作用。
本专利通过使用SysML图形建模语言对GPU输出控制模块进行事物级模型设计,能够在芯片设计早期实现对输出控制模块算法和架构的验证,大大缩减了项目的开发周期。
发明内容
基于背景技术中存在的问题,本发明提供了一种可以将复杂繁琐且易出现歧义的文字转换为清晰的图形模式,实现了对GPU输出控制模块架构的初步验证的基于SysML视图的GPU输出控制模块的 TLM装置及操作方法。
本发明的技术解决方案是:一种基于SysML视图的GPU输出控制模块的TLM装置,其特殊之处在于:包括GPU输出控制模块;上述GPU输出控制模块包括输出控制单元a和输出控制单元b以及体系结构寄存器单元;
上述输出控制单元a用于维护上级输出模块中SSC1~SSC3的顶点 warp,像素warp的输出顺序,顶点着色输出数据的传输和组装,像素着色输出数据传输和组装;
上述输出控制单元b用于维护SSC4~SSC6的顶点warp,像素warp 的输出顺序,顶点着色输出数据的传输和组装;
所述体系结构寄存器单元用于存储输出控制模块需要的参数信息;
上述GPU输出控制模块还包括若干进程和套接字;
上述GPU输出控制模块还包括八个FIFO单元;上述FIFO单元分别为包括fragm_data_FIFO_a、fragm_task_FIFO_a、vertex_data_FIFO_a、vertex_task_FIFO_a;上述FIFO单元分别为a路片元简单模式数据 FIFO、a路片元复杂模式任务FIFO、a路顶点简单模式数据FIFO、a 路顶点复杂模式任务FIFO、b路片元简单模式数据FIFO、b路片元复杂模式任务FIFO、b路顶点简单模式数据FIFO、b路顶点复杂模式任务FIFO;
上述TLM装置还包括若干进程、方法及套接字;
上述进程用于两路输出控制单元对简单模式下顶点、片元数据,复杂模式下顶点、片元任务的数据组装和转发功能;
上述套接字用于实现与外部模块的互联通信功能。
上述进程包括jsu2ocu_fragment_task_target_cthread_a进程、 jsu2ocu_vertex_task_target_cthread_a进程、jsu2ocu_glend_en_a_thread进程、 hiu2ocu_arch_reg_target_cthread进程、 usa2ocu_warp_done_status_cthread进程、 jsu2ocu_glend_en_a_thread进程、 jsu2ocu_vertex_task_target_cthread_b进程、 jsu2ocu_fragment_task_target_cthread_b进程、 ocu2sgu_fragment_busy_status_thread进程、 ocu2sgu_vertex_busy_status_thread进程、fragment_handling_cthread_a进程、vertex_handling_cthread_a进程、glend_flag_manage_cthread_a进程;
上述套接字包括fragment_simple_or_complex_mode_socket套接字、hiu2ocu_arch_reg_target_socket套接字、 jsu2ocu_fragment_task_target_socket_a套接字、jsu2ocu_fragment_task_target_socket_b套接字、 jsu2ocu_glend_en_a_socket、jsu2ocu_glend_en_b_socket套接字、 jsu2ocu_vertex_task_target_socket_a套接字、jsu2ocu_vertex_task_target_socket_b套接字、 ocu2geu_vertex_data_initiator_socket_a套接字、 ocu2geu_vertex_data_initiator_socket_b套接字、 ocu2jsu_register_domain_initiator_socket套接字、 ocu2jsu_submit_fragm_task_initiator_socket_a套接字、 ocu2jsu_submit_fragm_task_initiator_socket_b套接字、 ocu2rou_send_fragment_initiator_socket_a套接字、 ocu2rou_send_fragment_initiator_socket_b套接字、 ocu2sgu_fragment_busy_socket套接字、 ocu2sgu_vertex_busy_socket套接字、 ocu2usa_fragm_shade_data_initiator_socket_a套接字、 ocu2usa_fragm_shade_data_initiator_socket_b套接字、usa2ocu_warp_done_status_socket套接字、vertex_simple_or_complex_mode_socket套接字。
一种基于SysML视图的GPU输出控制模块的TLM装置的顶点处理方法,其特殊之处在于:包括以下操作步骤:
步骤1:获取vertex_data_FIFO_a、vertex_task_FIFO_a状态信息;
步骤2:判断两个FIFO是否都为空;
当两个FIFO都为空则在固定功能简单模式下进行glEnd处理并返回步骤1;
当两个FIFO有一个不为空则进入步骤3;
步骤3:获取顶点着色状态及简单复杂模式;
步骤4:根据FIFO状态及模式进行判断,当FIFO状态满足错误条件,则直接报错退出,结束仿真;当FIFO状态不满足错误条件,则进入步骤5;
上述错误条件为:两个FIFO均不空;固定功能复杂模式下简单数据FIFO不空;固定功能简单模式下复杂任务FIFO不空;用户编程模式下简单数据FIFO不空;
步骤5:设置vertex_busy_a为Busy;
步骤6:根据当前着色状态及简单复杂模式进行分类处理;
当前处于固定功能简单模式,且vertex_data_FIFO_a不空时执行固定功能简单模式顶点处理程序;
当前处于固定功能复杂模式,且vertex_task_FIFO_a不空时执行固定功能复杂模式顶点处理程序;
当前处于用户编程模式,且vertex_task_FIFO_a不空时执行用户编程模式顶点处理程序;
步骤7:设置vertex_busy_a为Idle;
步骤8:返回步骤1继续获取vertex_data_FIFO_a、vertex_task_FIFO_a状态信息。
一种基于SysML视图的GPU输出控制模块的TLM装置的glEndA标记管理方法,其特殊之处在于:包括以下操作步骤:
步骤1:等待时钟上升沿;
步骤2:初始化glEndA_flag=0;glEndA_set_lock= 1;glEndA_clear_lock=0;。
步骤3:判断glEndA_flag是否为1,若为1,则进入下一步;若不为1,则继续等待直到glEndA_flag值为1。
步骤4:设置glEndA_set_lock=0;glEndA_clear_lock=1;
步骤5:判断glEndA_flag是否为0,若为0,则进入下一步;若不为0,则继续等待直到glEndA_flag值为0;
步骤6:设置glEndA_set_lock=1;glEndA_clear_lock=0;执行完成后继续返回到步骤3。
一种基于SysML视图的GPU输出控制模块的TLM装置的片元处理方法,其特殊之处在于:包括以下操作步骤:
步骤1:获取fragm_data_FIFO_a、fragm_task_FIFO_a状态信息;
步骤2:判断两个FIFO是否都为空;
若都为空则返回步骤1继续获取fragm_data_FIFO_a、 fragm_task_FIFO_a状态信息;
若有一个不为空则进入步骤3;
步骤3:获取片元着色状态及简单复杂模式;
步骤4:根据FIFO状态及模式进行判断,若满足错误条件,则直接报错退出,结束仿真;若不满足错误条件,则进入步骤5。
上述错误条件为:两个FIFO均不空;固定功能复杂模式下简单数据FIFO不空;固定功能简单模式下复杂任务FIFO不空;用户编程复杂模式下简单数据FIFO不空;
步骤5:设置fragm_busy_a为Busy;
步骤6:根据当前着色状态及简单复杂模式进行分类处理;
当前处于固定功能简单模式,且fragm_data_FIFO_a不空时执行固定功能简单模式片元处理程序;
当前处于固定功能复杂或用户编程模式,且fragm_data_FIFO_a 不空时执行固定功能复杂模式或用户编程模式下片元处理程序;
步骤7:设置fragm_busy_a为Idle;
步骤8:返回步骤1继续获取fragm_data_FIFO_a、fragm_task_FIFO_a状态信息。
一种基于SysML视图的GPU输出控制模块的TLM装置的glendB 标记管理方法,其特殊之处在于:包括以下操作步骤:
步骤1:等待时钟上升沿;
步骤2:初始化glendB_flag=0;glendB_set_lock=1; glendB_clear_lock=0;。
步骤3:判断glendB_flag是否为1;
当glendB_flag为1,则进入下一步;
当glendB_flag不为1,则继续等待直到glendB_flag值为1;
步骤4:设置glendB_set_lock=0;glendB_clear_lock=1;
步骤5:判断glendB_flag是否为0,若为0,则进入下一步;若不为0,则继续等待直到glendB_flag值为0;
步骤6:设置glendB_set_lock=1;glendB_clear_lock=0;执行完成后继续返回到步骤3。
本发明具有的优点效果:
本发明提供的一种基于SysML视图的GPU输出控制模块的TLM 装置,通过输出控制模块的内部块图、活动图从两个角度呈现了GPU 输出控制模块功能的整体设计,将复杂繁琐且易出现歧义的文字转换为清晰的图形模式,实现了对GPU输出控制模块架构的初步验证,为软件、硬件开发提供模型化和可视化支持,达到缩短设计周期,加快开发进度以及辅助系统设计和验证的作用。
附图说明
图1为本发明的GPU输出控制模块的内部块图;
图2为本发明的GPU输出控制模块glendA标记管理活动图;
图3为本发明的GPU输出控制模块glendB标记管理活动图;
图4为本发明的GPU输出控制模块片元处理活动图。
具体实施方式
下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例,都属于本发明的保护范围。
参见图1-4,一种基于SysML视图的GPU输出控制模块的TLM装置,包括GPU输出控制模块;上述GPU输出控制模块包括输出控制单元a和输出控制单元b;
上述输出控制单元a用于维护上级输出模块中SSC1~SSC3的顶点 warp,像素warp的输出顺序,顶点着色输出数据的传输和组装,像素着色输出数据传输和组装以及体系结构寄存器单元;
上述输出控制单元b用于维护SSC4~SSC6的顶点warp,像素warp 的输出顺序,顶点着色输出数据的传输和组装;
所述体系结构寄存器单元用于存储输出控制模块需要的参数信息;
上述GPU输出控制模块还包括若干进程和套接字;
上述GPU输出控制模块还包括八个FIFO单元;上述FIFO单元分别为包括fragm_data_FIFO_a、fragm_task_FIFO_a、vertex_data_FIFO_a、vertex_task_FIFO_a;上述FIFO单元分别为a路片元简单模式数据 FIFO、a路片元复杂模式任务FIFO、a路顶点简单模式数据FIFO、a 路顶点复杂模式任务FIFO、b路片元简单模式数据FIFO、b路片元复杂模式任务FIFO、b路顶点简单模式数据FIFO、b路顶点复杂模式任务FIFO;
上述TLM装置还包括若干进程、方法及套接字;
上述进程用于两路输出控制单元对简单模式下顶点、片元数据,复杂模式下顶点、片元任务的数据组装和转发功能;
上述套接字用于实现与外部模块的互联通信功能。
上述进程包括jsu2ocu_fragment_task_target_cthread_a进程、 jsu2ocu_vertex_task_target_cthread_a进程、 jsu2ocu_glend_en_a_thread进程、 hiu2ocu_arch_reg_target_cthread进程、 usa2ocu_warp_done_status_cthread进程、 jsu2ocu_glend_en_a_thread进程、 jsu2ocu_vertex_task_target_cthread_b进程、 jsu2ocu_fragment_task_target_cthread_b进程、 ocu2sgu_fragment_busy_status_thread进程、ocu2sgu_vertex_busy_status_thread进程、 fragment_handling_cthread_a进程、vertex_handling_cthread_a进程、 glend_flag_manage_cthread_a进程;
上述套接字包括fragment_simple_or_complex_mode_socket套接字、hiu2ocu_arch_reg_target_socket套接字、 jsu2ocu_fragment_task_target_socket_a套接字、jsu2ocu_fragment_task_target_socket_b套接字、 jsu2ocu_glend_en_a_socket、jsu2ocu_glend_en_b_socket套接字、 jsu2ocu_vertex_task_target_socket_a套接字、jsu2ocu_vertex_task_target_socket_b套接字、 ocu2geu_vertex_data_initiator_socket_a套接字、 ocu2geu_vertex_data_initiator_socket_b套接字、 ocu2jsu_register_domain_initiator_socket套接字、 ocu2jsu_submit_fragm_task_initiator_socket_a套接字、 ocu2jsu_submit_fragm_task_initiator_socket_b套接字、 ocu2rou_send_fragment_initiator_socket_a套接字、 ocu2rou_send_fragment_initiator_socket_b套接字、ocu2sgu_fragment_busy_socket套接字、 ocu2sgu_vertex_busy_socket套接字、 ocu2usa_fragm_shade_data_initiator_socket_a套接字、 ocu2usa_fragm_shade_data_initiator_socket_b套接字、 usa2ocu_warp_done_status_socket套接字、vertex_simple_or_complex_mode_socket套接字。
一种基于SysML视图的GPU输出控制模块的TLM装置的顶点处理方法,包括以下操作步骤:
步骤1:获取vertex_data_FIFO_a、vertex_task_FIFO_a状态信息;
步骤2:判断两个FIFO是否都为空;
当两个FIFO都为空则在固定功能简单模式下进行glEnd处理并返回步骤1;
当两个FIFO有一个不为空则进入步骤3;
步骤3:获取顶点着色状态及简单复杂模式;
步骤4:根据FIFO状态及模式进行判断,当FIFO状态满足错误条件,则直接报错退出,结束仿真;当FIFO状态不满足错误条件,则进入步骤5;
上述错误条件为:两个FIFO均不空;固定功能复杂模式下简单数据FIFO不空;固定功能简单模式下复杂任务FIFO不空;用户编程模式下简单数据FIFO不空;
步骤5:设置vertex_busy_a为Busy;
步骤6:根据当前着色状态及简单复杂模式进行分类处理;
当前处于固定功能简单模式,且vertex_data_FIFO_a不空时执行固定功能简单模式顶点处理程序;
当前处于固定功能复杂模式,且vertex_task_FIFO_a不空时执行固定功能复杂模式顶点处理程序;
当前处于用户编程模式,且vertex_task_FIFO_a不空时执行用户编程模式顶点处理程序;
步骤7:设置vertex_busy_a为Idle;
步骤8:返回步骤1继续获取vertex_data_FIFO_a、 vertex_task_FIFO_a状态信息。
一种基于SysML视图的GPU输出控制模块的TLM装置的glEndA 标记管理方法,包括以下操作步骤:
步骤1:等待时钟上升沿;
步骤2:初始化glEndA_flag=0;glEndA_set_lock= 1;glEndA_clear_lock=0;。
步骤3:判断glEndA_flag是否为1,若为1,则进入下一步;若不为1,则继续等待直到glEndA_flag值为1。
步骤4:设置glEndA_set_lock=0;glEndA_clear_lock=1;
步骤5:判断glEndA_flag是否为0,若为0,则进入下一步;若不为0,则继续等待直到glEndA_flag值为0;
步骤6:设置glEndA_set_lock=1;glEndA_clear_lock=0;执行完成后继续返回到步骤3。
一种基于SysML视图的GPU输出控制模块的TLM装置的片元处理方法,包括以下操作步骤:
步骤1:获取fragm_data_FIFO_a、fragm_task_FIFO_a状态信息;
步骤2:判断两个FIFO是否都为空;
若都为空则返回步骤1继续获取fragm_data_FIFO_a、 fragm_task_FIFO_a状态信息;
若有一个不为空则进入步骤3;
步骤3:获取片元着色状态及简单复杂模式;
步骤4:根据FIFO状态及模式进行判断,若满足错误条件,则直接报错退出,结束仿真;若不满足错误条件,则进入步骤5。
上述错误条件为:两个FIFO均不空;固定功能复杂模式下简单数据FIFO不空;固定功能简单模式下复杂任务FIFO不空;用户编程复杂模式下简单数据FIFO不空;
步骤5:设置fragm_busy_a为Busy;
步骤6:根据当前着色状态及简单复杂模式进行分类处理;
当前处于固定功能简单模式,且fragm_data_FIFO_a不空时执行固定功能简单模式片元处理程序;
当前处于固定功能复杂或用户编程模式,且fragm_data_FIFO_a 不空时执行固定功能复杂模式或用户编程模式下片元处理程序;
步骤7:设置fragm_busy_a为Idle;
步骤8:返回步骤1继续获取fragm_data_FIFO_a、 fragm_task_FIFO_a状态信息。
一种基于SysML视图的GPU输出控制模块的TLM装置的glendB 标记管理方法,包括以下操作步骤:
步骤1:等待时钟上升沿;
步骤2:初始化glendB_flag=0;glendB_set_lock=1; glendB_clear_lock=0;。
步骤3:判断glendB_flag是否为1;
当glendB_flag为1,则进入下一步;
当glendB_flag不为1,则继续等待直到glendB_flag值为1;
步骤4:设置glendB_set_lock=0;glendB_clear_lock=1;
步骤5:判断glendB_flag是否为0,若为0,则进入下一步;若不为0,则继续等待直到glendB_flag值为0;
步骤6:设置glendB_set_lock=1;glendB_clear_lock=0;执行完成后继续返回到步骤3。
最后应说明的是,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种基于SysML视图的GPU输出控制模块的TLM装置,其特征在于:包括GPU输出控制模块;所述GPU输出控制模块包括输出控制单元a和输出控制单元b以及体系结构寄存器单元;
所述输出控制单元a用于维护上级输出模块中SSC1~SSC3的顶点warp,像素warp的输出顺序,顶点着色输出数据的传输和组装,像素着色输出数据传输和组装;
所述输出控制单元b用于维护SSC4~SSC6的顶点warp,像素warp的输出顺序,顶点着色输出数据的传输和组装;
所述体系结构寄存器单元用于存储输出控制模块需要的参数信息;
所述GPU输出控制模块还包括若干进程和套接字;
所述GPU输出控制模块还包括八个FIFO单元;所述FIFO单元分别为包括fragm_data_FIFO_a、fragm_task_FIFO_a、vertex_data_FIFO_a、vertex_task_FIFO_a;所述FIFO单元分别为a路片元简单模式数据FIFO、a路片元复杂模式任务FIFO、a路顶点简单模式数据FIFO、a路顶点复杂模式任务FIFO、b路片元简单模式数据FIFO、b路片元复杂模式任务FIFO、b路顶点简单模式数据FIFO、b路顶点复杂模式任务FIFO;
所述TLM装置还包括若干进程、方法及套接字;
所述进程用于两路输出控制单元对简单模式下顶点、片元数据,复杂模式下顶点、片元任务的数据组装和转发功能;
所述套接字用于实现与外部模块的互联通信功能。
2.根据权利要去1所述的一种基于SysML视图的GPU输出控制模块的TLM装置,其特征在于:所述进程包括
jsu2ocu_fragment_task_target_cthread_a进程、jsu2ocu_vertex_task_target_cthread_a进程、jsu2ocu_glend_en_a_thread进程、hiu2ocu_arch_reg_target_cthread进程、usa2ocu_warp_done_status_cthread进程、jsu2ocu_glend_en_b_thread进程、jsu2ocu_vertex_task_target_cthread_b进程、jsu2ocu_fragment_task_target_cthread_b进程、ocu2sgu_fragment_busy_status_thread进程、ocu2sgu_vertex_busy_status_thread进程、fragment_handling_cthread_a进程、vertex_handling_cthread_a进程、glend_flag_manage_cthread_a进程;
所述套接字包括fragment_simple_or_complex_mode_socket套接字、hiu2ocu_arch_reg_target_socket套接字、jsu2ocu_fragment_task_target_socket_a套接字、jsu2ocu_fragment_task_target_socket_b套接字、jsu2ocu_glend_en_a_socket、jsu2ocu_glend_en_b_socket套接字、jsu2ocu_vertex_task_target_socket_a套接字、jsu2ocu_vertex_task_target_socket_b套接字、ocu2geu_vertex_data_initiator_socket_a套接字、ocu2geu_vertex_data_initiator_socket_b套接字、ocu2jsu_register_domain_initiator_socket套接字、ocu2jsu_submit_fragm_task_initiator_socket_a套接字、ocu2jsu_submit_fragm_task_initiator_socket_b套接字、ocu2rou_send_fragment_initiator_socket_a套接字、ocu2rou_send_fragment_initiator_socket_b套接字、ocu2sgu_fragment_busy_socket套接字、ocu2sgu_vertex_busy_socket套接字、ocu2usa_fragm_shade_data_initiator_socket_a套接字、ocu2usa_fragm_shade_data_initiator_socket_b套接字、usa2ocu_warp_done_status_socket套接字、vertex_simple_or_complex_mode_socket套接字。
3.基于权利要求1所述的一种基于SysML视图的GPU输出控制模块的TLM装置的顶点处理方法,其特征在于:包括以下操作步骤:
步骤1:获取vertex_data_FIFO_a、vertex_task_FIFO_a状态信息;
步骤2:判断两个FIFO是否都为空;
当两个FIFO都为空则在固定功能简单模式下进行glEnd处理并返回步骤1;
当两个FIFO有一个不为空则进入步骤3;
步骤3:获取顶点着色状态及简单复杂模式;
步骤4:根据FIFO状态及模式进行判断,当FIFO状态满足错误条件,则直接报错退出,结束仿真;当FIFO状态不满足错误条件,则进入步骤5;
所述错误条件为:两个FIFO均不空;固定功能复杂模式下简单数据FIFO不空;固定功能简单模式下复杂任务FIFO不空;用户编程模式下简单数据FIFO不空;
步骤5:设置vertex_busy_a为Busy;
步骤6:根据当前着色状态及简单复杂模式进行分类处理;
当前处于固定功能简单模式,且vertex_data_FIFO_a不空时执行固定功能简单模式顶点处理程序;
当前处于固定功能复杂模式,且vertex_task_FIFO_a不空时执行固定功能复杂模式顶点处理程序;
当前处于用户编程模式,且vertex_task_FIFO_a不空时执行用户编程模式顶点处理程序;
步骤7:设置vertex_busy_a为Idle;
步骤8:返回步骤1继续获取vertex_data_FIFO_a、vertex_task_FIFO_a状态信息。
4.基于权利要求1所述的一种基于SysML视图的GPU输出控制模块的TLM装置的glEndA标记管理方法,其特征在于:包括以下操作步骤:
步骤1:等待时钟上升沿;
步骤2:初始化glEndA_flag=0;glEndA_set_lock=1;glEndA_clear_lock=0;。
步骤3:判断glEndA_flag是否为1,若为1,则进入下一步;若不为1,则继续等待直到glEndA_flag值为1。
步骤4:设置glEndA_set_lock=0;glEndA_clear_lock=1;
步骤5:判断glEndA_flag是否为0,若为0,则进入下一步;若不为0,则继续等待直到glEndA_flag值为0;
步骤6:设置glEndA_set_lock=1;glEndA_clear_lock=0;执行完成后继续返回到步骤3。
5.基于权利要求1所述的一种基于SysML视图的GPU输出控制模块的TLM装置的片元处理方法,其特征在于:包括以下操作步骤:
步骤1:获取fragm_data_FIFO_a、fragm_task_FIFO_a状态信息;
步骤2:判断两个FIFO是否都为空;
若都为空则返回步骤1继续获取fragm_data_FIFO_a、
fragm_task_FIFO_a状态信息;
若有一个不为空则进入步骤3;
步骤3:获取片元着色状态及简单复杂模式;
步骤4:根据FIFO状态及模式进行判断,若满足错误条件,则直接报错退出,结束仿真;若不满足错误条件,则进入步骤5。
所述错误条件为:两个FIFO均不空;固定功能复杂模式下简单数据FIFO不空;固定功能简单模式下复杂任务FIFO不空;用户编程复杂模式下简单数据FIFO不空;
步骤5:设置fragm_busy_a为Busy;
步骤6:根据当前着色状态及简单复杂模式进行分类处理;
当前处于固定功能简单模式,且fragm_data_FIFO_a不空时执行固定功能简单模式片元处理程序;
当前处于固定功能复杂或用户编程模式,且fragm_data_FIFO_a不空时执行固定功能复杂模式或用户编程模式下片元处理程序;
步骤7:设置fragm_busy_a为Idle;
步骤8:返回步骤1继续获取fragm_data_FIFO_a、fragm_task_FIFO_a状态信息。
6.基于权利要求1所述的一种基于SysML视图的GPU输出控制模块的TLM装置的glendB标记管理方法,其特征在于:包括以下操作步骤:
步骤1:等待时钟上升沿;
步骤2:初始化glendB_flag=0;glendB_set_lock=1;glendB_clear_lock=0;。
步骤3:判断glendB_flag是否为1;
当glendB_flag为1,则进入下一步;
当glendB_flag不为1,则继续等待直到glendB_flag值为1;
步骤4:设置glendB_set_lock=0;glendB_clear_lock=1;
步骤5:判断glendB_flag是否为0,若为0,则进入下一步;若不为0,则继续等待直到glendB_flag值为0;
步骤6:设置glendB_set_lock=1;glendB_clear_lock=0;执行完成后继续返回到步骤3。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011542573.9A CN112634422B (zh) | 2020-12-24 | 2020-12-24 | 一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011542573.9A CN112634422B (zh) | 2020-12-24 | 2020-12-24 | 一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112634422A true CN112634422A (zh) | 2021-04-09 |
CN112634422B CN112634422B (zh) | 2024-02-23 |
Family
ID=75321990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011542573.9A Active CN112634422B (zh) | 2020-12-24 | 2020-12-24 | 一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112634422B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120256922A1 (en) * | 2011-04-08 | 2012-10-11 | Simon Moy | Multithreaded Processor and Method for Realizing Functions of Central Processing Unit and Graphics Processing Unit |
CN109727186A (zh) * | 2018-12-12 | 2019-05-07 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于SystemC面向GPU片元着色任务调度方法 |
CN111028128A (zh) * | 2019-11-18 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于SystemC的面向GPU顶点输出控制方法及单元 |
CN111752670A (zh) * | 2019-03-28 | 2020-10-09 | 英特尔公司 | 构建信任域扩展并在信任域扩展内操作的安全仲裁模式 |
-
2020
- 2020-12-24 CN CN202011542573.9A patent/CN112634422B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120256922A1 (en) * | 2011-04-08 | 2012-10-11 | Simon Moy | Multithreaded Processor and Method for Realizing Functions of Central Processing Unit and Graphics Processing Unit |
CN109727186A (zh) * | 2018-12-12 | 2019-05-07 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于SystemC面向GPU片元着色任务调度方法 |
CN111752670A (zh) * | 2019-03-28 | 2020-10-09 | 英特尔公司 | 构建信任域扩展并在信任域扩展内操作的安全仲裁模式 |
CN111028128A (zh) * | 2019-11-18 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于SystemC的面向GPU顶点输出控制方法及单元 |
Non-Patent Citations (1)
Title |
---|
姜丽云;田泽;吴晓成;张骏;: "基于SystemC的GPU参数分配单元硬件TLM建模", 信息通信, no. 02, 15 February 2020 (2020-02-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN112634422B (zh) | 2024-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109324787A (zh) | 一种业务软件开发方法、装置及终端设备 | |
US10970129B2 (en) | Intelligent GPU scheduling in a virtualization environment | |
CN111459618A (zh) | 虚拟化环境中的智能gpu调度 | |
CN112381220B (zh) | 一种神经网络张量处理器 | |
JP7012689B2 (ja) | コマンド実行方法及び装置 | |
US20230034881A1 (en) | Scheduling method and device based on deep learning node computation, and storage medium | |
CN109669769B (zh) | 一种基于SystemC面向GPU顶点着色任务调度方法 | |
CN109522128B (zh) | 分段式多线程任务执行方法及装置 | |
CN112925587A (zh) | 用于初始化应用的方法和装置 | |
JP2023533404A (ja) | 駆動可能3dキャラクター生成方法、装置、電子機器、及び記憶媒体 | |
CN111061743A (zh) | 数据加工方法、装置和电子设备 | |
CN109710398B (zh) | 一种基于uml的面向gpu顶点着色任务调度方法 | |
CN112486807A (zh) | 一种压力测试方法、装置、电子设备和可读存储介质 | |
CN112634422A (zh) | 一种基于SysML视图的GPU输出控制模块的TLM装置及操作方法 | |
CN109597611B (zh) | 前端数据流控制组件开发系统、方法、设备及存储介质 | |
CN111767059A (zh) | 深度学习模型的部署方法、装置、电子设备和存储介质 | |
CN111028128A (zh) | 一种基于SystemC的面向GPU顶点输出控制方法及单元 | |
CN108628693A (zh) | 处理器调试方法和系统 | |
CN113722037B (zh) | 一种用户界面的刷新方法、装置、电子设备及存储介质 | |
CN115543534A (zh) | 训练任务的管理方法、装置、电子设备及存储介质 | |
CN114218067A (zh) | 一种异构众核软件调试装置及调试方法 | |
CN112581585A (zh) | 一种基于SysML视图的GPU命令处理模块的TLM装置及操作方法 | |
CN112581581B (zh) | 一种基于SysML视图的GPU视窗变换模块TLM装置及操作方法 | |
CN110033405A (zh) | 一种基于图像处理器加速的符号执行方法及系统 | |
CN111045665B (zh) | 一种基于uml的gpu命令处理器 |
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 |