新增调试使能+DAC寄存器配置

This commit is contained in:
yangshenbo 2026-08-26 17:55:13 +08:00
parent 9cb439dbb2
commit acbad62e62
8 changed files with 281 additions and 96 deletions

View File

@ -251,6 +251,8 @@ class ZChipConfig(object):
self._ramp_config(**kwargs)
elif chip_mode == 'AWG':
self._awg_config(**kwargs)
def _ramp_config(self, **kwargs):
self.write_register(addr_base['CTRL0_BASE'] + reg_define['ctrl_reg']['MODDOTR'], 8) # 切换到RAMP输出
ramp_ctrl = kwargs.pop('ramp_ctrl')

View File

@ -27,7 +27,7 @@
"rz_ff_pha": 0,
"rz_fm_pha": 45,
"ff_amp": [
32767,
10000,
32767,
32767,
32767
@ -122,6 +122,21 @@
"wave_time": 22
}
],
"custom_registers": [
{
"addr": 52,
"values": 5
},
{
"addr": 6291504,
"values": [
0,
0,
0,
0
]
}
],
"FolderName": "gen_cases\\General",
"CaseName": "TC_AWG_MOD_TAILCOR",
"config_file": "gen_cases\\General\\TC_AWG_MOD_TAILCOR_HEX.txt"

View File

@ -1,3 +1,14 @@
00000034
00100004
00000005
00600030
00100010
00000000
00000000
00000000
00000000
00301000
00100080
0347a17d
@ -89,7 +100,7 @@
6aaa0000
7fff0000
00000000
7fff7fff
27107fff
7fff7fff
7fff7fff
7fff7fff

View File

@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
"execution_count": 7,
"execution_count": 3,
"id": "initial_id",
"metadata": {
"ExecuteTime": {
@ -11,16 +11,7 @@
},
"collapsed": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The autoreload extension is already loaded. To reload it, use:\n",
" %reload_ext autoreload\n"
]
}
],
"outputs": [],
"source": [
"# _配置\n",
"# TODO: 完整的定向case测试集\n",
@ -145,7 +136,7 @@
},
{
"cell_type": "code",
"execution_count": 3,
"execution_count": 2,
"id": "dd0c2d05a0afc9b6",
"metadata": {
"ExecuteTime": {
@ -155,15 +146,14 @@
},
"outputs": [
{
"ename": "FileNotFoundError",
"evalue": "[Errno 2] No such file or directory: 'D:\\\\MyDocument\\\\工作\\\\Z芯片的case生成器\\\\Chip_Case_Generator\\\\Z_case_Generator_V2.0\\\\gen_cases\\\\TC_FFNCO_FREQ_SCAN\\\\tc_ffnco_freq_scan100Mhz.json'",
"ename": "NameError",
"evalue": "name 'Path' is not defined",
"output_type": "error",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mFileNotFoundError\u001b[0m Traceback (most recent call last)",
"Input \u001b[1;32mIn [3]\u001b[0m, in \u001b[0;36m<cell line: 0>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 9\u001b[0m \u001b[38;5;66;03m# 2. 加载配置\u001b[39;00m\n\u001b[0;32m 10\u001b[0m pm_load \u001b[38;5;241m=\u001b[39m ParamsManager(load_dir)\n\u001b[1;32m---> 11\u001b[0m params \u001b[38;5;241m=\u001b[39m \u001b[43mpm_load\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mload\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcase_name\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 13\u001b[0m \u001b[38;5;66;03m# 3. 自定义你的新输出路径 \u001b[39;00m\n\u001b[0;32m 14\u001b[0m custom_output_dir \u001b[38;5;241m=\u001b[39m \u001b[38;5;124mr\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mD:\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mMyDocument\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124m工作\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mZ芯片的case生成器\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mChip_Case_Generator\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mZ_case_Generator_V2.0\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mgen_cases\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mTC_FFNCO_FREQ_SCAN\u001b[39m\u001b[38;5;124m'\u001b[39m\n",
"File \u001b[1;32md:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\ParamsManager.py:30\u001b[0m, in \u001b[0;36mParamsManager.load\u001b[1;34m(self, filename)\u001b[0m\n\u001b[0;32m 26\u001b[0m filename \u001b[38;5;241m=\u001b[39m filename \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m.json\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m 28\u001b[0m filepath \u001b[38;5;241m=\u001b[39m os\u001b[38;5;241m.\u001b[39mpath\u001b[38;5;241m.\u001b[39mjoin(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mparams_dir, filename)\n\u001b[1;32m---> 30\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mfilepath\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mr\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mencoding\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mutf-8\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m f:\n\u001b[0;32m 31\u001b[0m params \u001b[38;5;241m=\u001b[39m json\u001b[38;5;241m.\u001b[39mload(f)\n\u001b[0;32m 32\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m params\n",
"\u001b[1;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'D:\\\\MyDocument\\\\工作\\\\Z芯片的case生成器\\\\Chip_Case_Generator\\\\Z_case_Generator_V2.0\\\\gen_cases\\\\TC_FFNCO_FREQ_SCAN\\\\tc_ffnco_freq_scan100Mhz.json'"
"\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)",
"Input \u001b[1;32mIn [2]\u001b[0m, in \u001b[0;36m<cell line: 0>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;66;03m# load params\u001b[39;00m\n\u001b[0;32m 2\u001b[0m \u001b[38;5;66;03m# 1. 指定要加载的 JSON 文件完整路径\u001b[39;00m\n\u001b[0;32m 3\u001b[0m json_file_path \u001b[38;5;241m=\u001b[39m \u001b[38;5;124mr\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mD:\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mMyDocument\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124m工作\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mZ芯片的case生成器\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mChip_Case_Generator\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mZ_case_Generator_V2.0\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mgen_cases\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mTC_FFNCO_FREQ_SCAN\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mtc_ffnco_freq_scan100Mhz.json\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[1;32m----> 5\u001b[0m json_path \u001b[38;5;241m=\u001b[39m \u001b[43mPath\u001b[49m(json_file_path)\n\u001b[0;32m 6\u001b[0m load_dir \u001b[38;5;241m=\u001b[39m json_path\u001b[38;5;241m.\u001b[39mparent \u001b[38;5;66;03m# 获取目录\u001b[39;00m\n\u001b[0;32m 7\u001b[0m case_name \u001b[38;5;241m=\u001b[39m json_path\u001b[38;5;241m.\u001b[39mstem \u001b[38;5;66;03m# 文件名跟随.json前面的\u001b[39;00m\n",
"\u001b[1;31mNameError\u001b[0m: name 'Path' is not defined"
]
}
],
@ -189,7 +179,7 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 14,
"id": "47c22172d77fc331",
"metadata": {
"ExecuteTime": {
@ -205,13 +195,13 @@
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\General\\tc_general_awg_HEX.txt\n"
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\General\\TC_AWG_MOD_TAILCOR_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\General\\tc_general_awg_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\General\\tc_general_awg_HEX.txt</a>"
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\General\\TC_AWG_MOD_TAILCOR_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\General\\TC_AWG_MOD_TAILCOR_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
@ -227,19 +217,19 @@
"run_case({\n",
" 'chip_mode':'AWG', #分为AWG和RAMP模式\n",
" 'mode':'mod', #可选nco nco_fm env mod四种模式\n",
" 'tail_en': False, #拖尾矫正开关\n",
" 'tail_en': True, #拖尾矫正开关\n",
" 'tc_coef_set': 'coef1', #拖尾矫正打开生效\n",
" 'inner_sync': True, #内部触发,应该是软触发,写一个寄存器,就能触发\n",
" 'amp_mod_enable': True, #调幅的开关,mod调制模式下起作用。\n",
" 'freq_mod_enable': True, #nco的开关\n",
" 'bias_enable': True, #必开的开关,AWG模式下,偏置必须打开,否则AWG输出保持为0.\n",
" \n",
" 'fcw': [100, 200, 300, 400], # MHz\n",
" 'mcu_reg_clr': True,\n",
" 'fcw': [200, 200, 300, 400], # MHz\n",
" 'mcu_reg_clr': False,\n",
" 'pcw': [0, 30, 45, 90, 120, 135, 150, 180], # Deg \n",
" 'rz_ff_pha': 0,\n",
" 'rz_fm_pha': 45,\n",
" 'ff_amp': [32767, 32767, 32767, 32767],\n",
" 'ff_amp': [10000, 32767, 32767, 32767],\n",
" 'fm_amp': [32767, 32767, 32767, 32767],\n",
" 'bias': [1, 2, 3, 4],\n",
" 'fm_en' :False, #nco_fm的开关,在nco_fm模式时,必须打开,不然nco_fm不工作,就是一条直线. mod的模式下开启fm_en,同时打开nco,就能看到两个正弦波叠加啊 \n",
@ -247,10 +237,10 @@
" 'send_interval': [100, 150, 200, 250, 300, 350, 400,450,500],\n",
" 'cycle_num': 0, #0代表无限循环,如果要想扫参,那么这个波形序列就不能无限循环播放\n",
" 'codeword_configs': [\n",
" {'wave_hold': 1, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 0},\n",
" {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 0, 'env_index': 1},\n",
" # {'wave_hold': 1, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 2},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 0, 'env_index': 3},\n",
" # {'wave_hold': 1, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 0},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 0, 'env_index': 1},\n",
" {'wave_hold': 1, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 2},\n",
" {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 0, 'env_index': 3},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 4},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 5},\n",
" #{'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 6},\n",
@ -271,8 +261,13 @@
" {'envelope_type': 'rect', 'amp': 32767, 'wave_time': 12},\n",
" {'envelope_type': 'flattop', 'amp': 32767, 'edge_time': 2, 'wave_time': 22},\n",
" ],\n",
"\n",
" 'custom_registers': [\n",
" {\"addr\": 0x34, \"values\": 0x5}, # Debug存储器使能\n",
" {\"addr\": 0x600030, \"values\": [0x0, 0x0, 0x0, 0x0]}, # DAC 配置\n",
" ],\n",
" 'FolderName': 'General',\n",
" 'CaseName': 'tc_general_awg',\n",
" 'CaseName': 'TC_AWG_MOD_TAILCOR',\n",
"})"
]
},
@ -348,7 +343,7 @@
},
{
"cell_type": "code",
"execution_count": 17,
"execution_count": 7,
"id": "3895007623de81e8",
"metadata": {
"ExecuteTime": {
@ -364,63 +359,225 @@
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_0deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_15deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_30deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_45deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_60deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_75deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_90deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_105deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_120deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_135deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_150deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_165deg_HEX.txt\n",
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_FFNCO_PHA_SCAN\\tc_ffnco_pha_scan_180deg_HEX.txt\n"
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_1MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_1MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_1MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_101MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_101MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_101MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_201MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_201MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_201MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_301MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_301MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_301MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_401MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_401MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_401MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_501MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_501MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_501MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_601MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_601MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_601MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_701MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_701MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_701MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_801MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_801MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_801MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"执行 config_chip_reg\n",
"执行了 env_config\n",
"执行了 instruction_config\n",
"生成文件路径:D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_901MHz_HEX.txt\n"
]
},
{
"data": {
"text/html": [
"<a href=\"D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_901MHz_HEX.txt\" target=\"_blank\">D:\\MyDocument\\工作\\Z芯片的case生成器\\Chip_Case_Generator\\Z_case_Generator_V2.0\\gen_cases\\TC_AWG_NCO_FM_FREQ\\tc_awg_nco_fm_freq_901MHz_HEX.txt</a>"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# ========== 扫频参数配置(你只需要改这里) ==========\n",
"var_start = 0 # 起始频率 (MHz)\n",
"var_stop = 180 # 终止频率 (MHz)\n",
"var_step = 15 # 步进 (MHz)\n",
"var_start = 1 # 起始频率 (MHz)\n",
"var_stop = 901 # 终止频率 (MHz)\n",
"var_step = 100 # 步进 (MHz)\n",
"# ===================================================\n",
"\n",
"# 生成频率列表\n",
@ -431,7 +588,7 @@
"for var in var_list:\n",
" run_case({\n",
" 'chip_mode': 'AWG',\n",
" 'mode': 'nco',\n",
" 'mode': 'nco_fm',\n",
" 'tail_en': False,\n",
" 'tc_coef_set': 'coef1',\n",
" 'inner_sync': True,\n",
@ -439,24 +596,24 @@
" 'freq_mod_enable': True,\n",
" 'bias_enable': True,\n",
" \n",
" 'fcw': [100, 200, 300, 400], # 只有第一个元素在变\n",
" 'fcw': [var, 200, 300, 400], # 只有第一个元素在变\n",
" 'mcu_reg_clr': True,\n",
" 'pcw': [var, 30, 45, 90, 120, 135, 150, 180],\n",
" 'pcw': [15, 30, 45, 90, 120, 135, 150, 180],\n",
" 'rz_ff_pha': 0,\n",
" 'rz_fm_pha': 45,\n",
" 'ff_amp': [32767, 32767, 32767, 32767],\n",
" 'fm_amp': [32767, 32767, 32767, 32767],\n",
" 'bias': [1, 2, 3, 4],\n",
" 'fm_en': False,\n",
" 'fm_en': True,\n",
" 'instr_type': 'general_send_wait',\n",
" 'send_interval': [100, 150, 200, 250, 300, 350, 400, 450, 500],\n",
" 'cycle_num': 1,\n",
" 'codeword_configs': [\n",
" {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 4},\n",
" {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 5},\n",
" {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 6},\n",
" {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 7},\n",
" {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 8},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 5},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 6},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 7},\n",
" # {'wave_hold': 0, 'fcw_index': 0, 'pcw_index': 0, 'code_clr': 1, 'env_index': 8},\n",
" ],\n",
" 'sweep_config': {\n",
" 'sweep_num': 0,\n",
@ -472,8 +629,8 @@
" {'envelope_type': 'rect', 'amp': 32767, 'wave_time': 12},\n",
" {'envelope_type': 'flattop', 'amp': 32767, 'edge_time': 2, 'wave_time': 22},\n",
" ],\n",
" 'FolderName': 'TC_FFNCO_PHA_SCAN',\n",
" 'CaseName': f'tc_ffnco_pha_scan_{var}deg', # 自动生成文件名\n",
" 'FolderName': 'TC_AWG_NCO_FM_FREQ',\n",
" 'CaseName': f'tc_awg_nco_fm_freq_{var}MHz', # 自动生成文件名\n",
" })"
]
}