趋高智能之FPGA数字信号处理之趋高智能机器视觉方案开发
趋高智能之FPGA数字信号处理之趋高智能机器视觉方案开发。
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
趋高智能FPGA的开发相对于传统PC、单片机的开发有很大不同。趋高智能FPGA以并行运算为主,以硬件描述语言来实现;相比于PC或单片机(无论是冯诺依曼结构还是哈佛结构)的顺序操作有很大区别,也造成了FPGA开发入门较难。FPGA开发需要从顶层设计、模块分层、逻辑实现、软硬件调试等多方面着手。
趋高智能已有10年以上的软件硬件开发经验。趋高智能机器视觉可适用范围有:AOI、自动光学检测仪、CCD、通用OCR、文字识别、图像处理识别、缺陷检测、边缘拟合、瑕疵检测、机械手臂、运动控制、FPGA、目标定位、尺寸测量、深度测量、人脸识别、人工智能、超声波系统、贴片机、喷码机、激光雕刻等等产品及行业。
我们来看一个程序段:
class Voucher
{
protected Date date
{
After() -> { year.Invalidate() month.Invalidate() day.Invalidate() }
}
public virtual int year = date.GetYear()
{
When() = year > 2003
Valid() = year >1980 && year < 2050
After() = date := Date( year, month, day )
}
public virtual int month = date.GetMonth()
{
Valid() = month >= 1 && month <= 12
After() -> date := Date( year, month, day )
}
public virtual int day = date.GetDay()
{
Valid() = day >= 1 && day <= 31 && Date(year, month, day).GetDay() == day
After() ->date := Date( year, month, day )
}
}