DOI QR코드

DOI QR Code

Design and Implementation of a Host Interface for a Regular Expression Processor

정규표현식 프로세서를 위한 호스트 인터페이스 설계 및 구현

  • 김종현 (연세대학교 대학원 전산학과) ;
  • 윤상균 (연세대학교 컴퓨터정보통신공학부)
  • Received : 2016.09.01
  • Accepted : 2016.11.18
  • Published : 2017.02.15

Abstract

Many hardware-based regular expression matching architectures have been proposed for high-performance matching. In particular, regular expression processors, which perform pattern matching by treating the regular expressions as the instruction sequence like general purpose processors, have been proposed. After instruction sequence and data are provided in the instruction memory and data memory, respectively, a regular expression processor can perform pattern matching. To use a regular expression processor as a coprocessor, we need the host interface to transfer the instruction and data into the memory of a regular expression processor. In this paper, we design and implement the host interface between a host and a regular expression processor in the DE1-SoC board and the application program interface. We verify the operations of the host interface and a regular expression processor by executing the application programs which perform pattern matching using the application program interface.

정규표현식 패턴 매칭을 고속으로 수행하기 위하여 하드웨어 기반의 정규표현식 매칭 회로들이 제시되었으며, 특히 보통 프로세서처럼 정규표현식에 대한 프로그램을 실행하여 패턴 매칭을 수행하는 정규표현식 프로세서가 제시되었다. 정규표현식 프로세서가 패턴 매칭을 수행하기 위해서는 명령어 메모리에 정규표현식 패턴에 대한 명령어가, 데이터 메모리에는 매칭 대상이 되는 데이터가 미리 저장되어야 한다. 정규표현식 프로세서를 호스트의 보조프로세서로 사용하려면 호스트에서 정규표현식 프로세서의 명령어 메모리와 데이터 메모리를 초기화하는 기능을 제공해야 하며 이를 위한 호스트 인터페이스가 필요하다. 본 논문에서는 Altera사의 DE1-SoC 보드에서 호스트와 정규표현식 프로세서 간의 인터페이스를 설계하였고, 이를 사용하기 위한 응용 프로그램 인터페이스도 구현하였다. 응용 프로그램에서 응용프로그램 인터페이스를 사용하여 정규표현식 프로세서를 이용한 패턴 매칭을 수행하여 호스트 인터페이스의 동작을 확인하였다.

Keywords

Acknowledgement

Supported by : 한국연구재단

References

  1. P. Dlugosch, D. Brown, P. Glendenning, M. Leventhal, and H. Noyes, "An Efficient and Scalable Semiconductor Architecture for Parallel Automata Processing," IEEE Trans. Parallel & Distributed Systems, Vol. 25, No. 12, pp. 3088-3098, Dec. 2014. https://doi.org/10.1109/TPDS.2014.8
  2. M. Paolieri, I. Bonesana, M. Santambrogio, "ReCPU: a parallel and pipelined architecture for regular expression matching," Proc. IFIP Int. Conf. VLSISoC, 2007.
  3. I. Bonesana, M. Paolieri, and M. Santambrogio, "An adaptable FPGA-based system for regular expression matching," Proc. conf. Design, Automation and Test in Europe, (DATE'08), 2008.
  4. Q. Li, J. Li, J. Wang, B. Zhao, and Y. Qu, "A pipelined processor architecture for regular expression string matching," Microprocessors and Microsystems, Vol. 36, No. 6, pp. 520-526, Aug. 2012. https://doi.org/10.1016/j.micpro.2012.04.004
  5. B. Ahn, K.H Lee, and S.K. Yun, "Regular expression matching processor supporting efficient repetitions," Journal of KIISE : Computing Practices and Letters, Vol. 19, No. 11, pp. 553-558, Nov. 2013. (in Korean)
  6. DE1-SoC Board, [Online]. Available: http://de1-soc.terasic.com
  7. Altera, "Cyclone V Hard Processor System Technical Reference Manual," [Online]. Available: https://www.altera.com/en_US/pdfs/literature /hb/cyclone-v/cv_5v4.pdf
  8. Altera, "Avalon Interface Specifications," [Online]. Available: https://www.altera.com/content/dam/alterawww/global/en_US/pdfs/literature/manual/mnl_avalon_spec.pdf