Joseph C. Libby's research while affiliated with University of New Brunswick and other places

Publications (11)

Conference Paper
Full-text available
FPGA architecture exploration is a topic of great interest to hardware researchers. By synthesizing many hardware descriptions with different architecture specifications, it is possible to compare the generated circuits and draw a conclusion about those specifications. In order to be confident in results obtained from this exploration, it is necess...
Article
Latency found in user interfaces can seriously harm the experience of an end user. Long load times, and perceived sluggishness of systems can potentially cause users to abandon a system for one with a more responsive interface. This work will present the development of a decompression core that will be used in conjunction with Portable Network Grap...
Conference Paper
Latency found in user interfaces can seriously harm the experience of an end user. Long load times, and perceived sluggishness of systems can potentially cause users to abandon a system for one with a more responsive interface. This work will present the development of a decompression core that will be used in conjunction with Portable Network Grap...
Conference Paper
Full-text available
Utilizing high level hardware description languages for the creation of customized circuits facilitates the rapid development and deployment of new hardware. While hardware design languages increase the speed at which hardware can be developed, creating hardware designs that are both efficient in resource usage and processing speed can be time cons...
Article
The Common Language Infrastructure provides a unified instruction set which may be targeted by a variety of high level language compilers. This unified instruction set simplifies the construction of compilers and gives application designers the ability to choose the high level programming language that best suits the problem being solved. While the...
Conference Paper
Full-text available
The widespread availability of field programmable gate arrays (FPGA) coupled with different implementations of "soft-core" processors has created a need to find new methods for optimizing these processors. Because design space is limited on most FPGA's and the maximum clock rate of these processors is heavily bound to the overall size and resource...
Article
Microsoft’s .NET platform has been developed to simplify development of Windows applications. The execution environment at the heart of this platform is a virtual machine known as the common language runtime (or CLR). The goal of this paper is to present a comprehensive behavioral analysis of the CLR instruction set and the high level language supp...
Conference Paper
Full-text available
High level hardware design languages are making it possible for people with little background in hardware design to create their own custom hardware. This allows software designers to begin looking beyond general purpose computing into the realm of customized hardware in order to increase the performance of their applications. The ease with which h...
Conference Paper
Full-text available
Microsoft's .NET platform was developed to simplify development of Windows applications. At the core of the .Net platform is a virtual machine known as the Common Language Runtime (CLR). Virtual machines do not allow for optimal performance, and a full hardware implementation is not always feasible. The goal of this paper is to present a preliminar...
Conference Paper
Full-text available
Context switching between partitions in a hardware/software co-design virtual machine must be performed efficiently to minimize its impact on overall execution time. Loop sensitive context switching is sensitive to the non-sequential flow of execution due to branch instructions in an application. This approach differs from earlier work as the algor...

Citations

... This paper describes the complexity of interdependency analysis in relation to metrics of requirements coupling. A survey of Data Dependency Analysis Techniques for Automated Parallelization is given in [5]. This paper discusses the dependencies that exist between statements in that program and detailing several different classes of dependence analysis techniques. ...
... Beyond building components as conven- tional libraries, the Koala tools (van Ommering et al., 2000) have been used to generate a more elaborate component-based framework, implementing system models based the Darwin language and transform- ing to compilable C-code. The Component Object Model(COM) and .NET technologies from Microsoft have also been used for embedded systems, provid- ing an alternative object oriented model and run-time environment, respectively (Libby and Kent, 2009). ...
... The development of any software system requires previous knowledge of the programming environment in order to decide the best approach for implementation [1]. Therefore, every platform has been evaluated based on performance. ...
... The architecture files that were used for final experimentation were copies of the "Flagship Heterogeneous Architecture (No Carry Chains) for VTR 7.0," called k6_frac_N10_mem32K_40nm.xml [6]. The ODIN_II simulator [11], [12] was used for results verification. ...
... An analysis of these results will allow any inefficiencies in the translation to be identified. Furthermore, a baseline for performance and resource usage can be established which may be used in demonstrating the performance gains or resource usage improvements obtained in future improvements to the translator [13,8] . Overlooked implementation issues causing incorrect results may also be identified. ...