|
ABSTRACT
New programming languages paradigms have commonly been evaluated and eventually incorporated into hardware description languages. Aspect-oriented programming (AOP) is a new paradigm that provides new modularity constructs on top of object-oriented and structured languages such as Java, C++ and C.This paper presents and assesses possible applications of AOP in the context of integrated system design. More specifically, we apply AOP in applications developed using SystemC to model important system aspects such as metrics measure, communication and cache policy to demonstrate the benefits of this approach. The impact of this new approach in the simulation time of the applications is also discussed in the paper.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Al-Zoubi, H., Milenkovic, A., and Milenkovic, M. (2004). Performance evaluation of cache replacement policies for the SPEC CPU2000 benchmark suite. In Proceedings of the 42nd annual Southeast regional conference, pages 267--272. ACM Press.
|
| |
2
|
Borrione, D., Piloty, R., Hill, D., Lieberherr, K. J., and Moorby, P. (1992). Three Decades of HDLs: Part II, Conlan Through Verilog. IEEE Design & Test, 9(3).
|
| |
3
|
Brunel, J.-Y., Natale, M. D., Ferrari, A., Giusto, P., and Lavagno, L. (2004). Softcontract: an Assertion-Based Software Development Process that Enables Design-by-Contract. In DATE '04: Proceedings of the conference on Design, automation and test in Europe, page 10358. IEEE Computer Society.
|
| |
4
|
Chu, Y., Dietmeyer, D. L., Duley, J. R., Hill, F. J., Barbacci, M. R., Rose, C. W., Ordy, G., Johnson, B., and Roberts, M. (1992). Three Decades of HDLs: Part I, CDL Through TI-HDL. IEEE Design & Test, 9(2).
|
| |
5
|
Czarnecki, K. and Eisenecker, U. (2000). Generative Programming: Methods, Tools and Applications. Addison-Wesley Professional.
|
| |
6
|
Damasevicius, R., Majauskas, G., and Stuikys, V. (2003). Application of design patterns for hardware design. In DAC '03: Proceedings of the 40th conference on Design automation, pages 48--53. ACM Press.
|
| |
7
|
Dijkstra, E. W. (1976). A Discipline of Programming. Prentice Hall.
|
| |
8
|
Diotalevi, F. (2004). Contract enforcement with AOP. http://www-128.ibm.com/developerworks/library/j-ceaop/. Page visited on March 2006.
|
| |
9
|
Elrad, T., Filman, R. E., and Bader, A. (2001). Aspect-oriented programming: Introduction. Communications of the ACM, 44(10).
|
| |
10
|
Gamma, E., Helm, R., Johnson, R., and Vlissides, J. (1995). Design patterns: elements of reusable object-oriented software. Addison-Wesley Longman Publishing Co., Inc.
|
| |
11
|
Garcia, A., Sant'Anna, C., Figueiredo, E., Kulesza, U., Lucena, C., and von Staa, A. (2005). Modularizing design patterns with aspects: a quantitative study. In AOSD '05: Proceedings of the 4th international conference on Aspect-oriented software development, pages 3--14. ACM Press.
|
| |
12
|
Jakacki, G. (2003). Aspect-oriented techniques for extraction of communication models from systemc designs. In Proceedings of the 5th International Conference on ASIC, pages 262--265. IEEE Computer Society.
|
| |
13
|
Jantsch, A. and Tenhunen, H., editors (2003). Networks on chip. Kluwer Academic Publishers.
|
| |
14
|
Jeda (2005). Jeda Technologies. Available at http://www.jedatechnologies.net. Page visited on March 2006.
|
| |
15
|
Kiczales, G., Lamping, J., Mendhekar, A., Maeada, C., Videira, C., Loingtier, J., and Irwin, J. (1997). Aspect-Oriented Programming. In Proceedings of the European Conference on Object-Oriented Programming, number 1241 in LNCS. Springer-Verlag.
|
| |
16
|
Meyer, B. (2000). Object-Oriented Software Construction. Prentice Hall PTR.
|
| |
17
|
Moy, M., Maraninchi, F., and Maillet-Contoz, L. (2005). Pinapa: an extraction tool for systemc descriptions of systems-on-a-chip. In EMSOFT '05: Proceedings of the 5th ACM international conference on Embedded software, pages 317--324. ACM Press.
|
| |
18
|
OCP (2003). Open Core Protocol Specification. OCP-IP Association.
|
| |
19
|
Panda, P. R. (2001). Systemc: a modeling platform supporting multiple design abstractions. In ISSS '01: Proceedings of the 14th international symposium on Systems synthesis, pages 75--80. ACM Press.
|
| |
20
|
Rincon, F., Moya, F., Barba, J., and Lopez, J. C. (2005). Model Reuse through Hardware Design Patterns. In DATE '05, pages 324--329. IEEE Computer Society.
|
| |
21
|
Spinczyk, O., Gal, A., and Schröder-Preikschat, W. (2002). AspectC++: an aspect-oriented extension to the C++ programming language. In Proceedings of the 40th International Confernece on Tools Pacific, pages 53--60. Australian Computer Society.
|
| |
22
|
Thekkath, C. A., Levy, H. M., and Lazowska, E. D. (1994). Separating data and control transfer in distributed operating systems. SIGPLAN Not., 29(11):2--11.
|
| |
23
|
Vachharajani, M., Vachharajani, N., and August, D. I. (2004). The liberty structural specification language: a high-level modeling language for component reuse. In PLDI '04: Proceedings of the ACM SIGPLAN 2004, pages 195--206. ACM Press.
|
| |
24
|
Yan Chen, Weidong Qiu, B. Z. and Peng, C. (2004). An automatic test coverage analysis for systemc description using aspect-oriented programming. In The 8th International Conference on Computer Supported Cooperative Work in Design Proceedings, pages 632--636. IEEE Computer Society.
|
CITED BY
|
Bruno Albertini , Sandro Rigo , Guido Araujo , Cristiano Araujo , Edna Barros , Willians Azevedo, A computational reflection mechanism to support platform debugging in SystemC, Proceedings of the 5th IEEE/ACM international conference on Hardware/software codesign and system synthesis, September 30-October 03, 2007, Salzburg, Austria
|
|